@@ -230,14 +230,14 @@ class Status(models.IntegerChoices):
230230 settings .AUTH_USER_MODEL ,
231231 verbose_name = _ ("created by" ),
232232 on_delete = models .SET_NULL ,
233- null = True ,
233+ null = True , blank = True ,
234234 related_name = "created_by_dref" ,
235235 )
236236 modified_by = models .ForeignKey (
237237 settings .AUTH_USER_MODEL ,
238238 verbose_name = _ ("modified by" ),
239239 on_delete = models .SET_NULL ,
240- null = True ,
240+ null = True , blank = True ,
241241 related_name = "modified_by_dref" ,
242242 )
243243 users = models .ManyToManyField (settings .AUTH_USER_MODEL , verbose_name = _ ("users" ), blank = True , related_name = "user_dref" )
@@ -582,6 +582,7 @@ class Meta:
582582 verbose_name_plural = _ ("drefs" )
583583
584584 def save (self , * args , ** kwargs ):
585+ self .full_clean () # required for choice field validation
585586 if self .budget_file and self .budget_file_id != self .__budget_file_id :
586587 pages = convert_from_bytes (self .budget_file .file .read ())
587588 if len (pages ) > 0 :
@@ -666,14 +667,14 @@ class DrefOperationalUpdate(models.Model):
666667 settings .AUTH_USER_MODEL ,
667668 verbose_name = _ ("created by" ),
668669 on_delete = models .SET_NULL ,
669- null = True ,
670+ null = True , blank = True ,
670671 related_name = "created_by_dref_operational_update" ,
671672 )
672673 modified_by = models .ForeignKey (
673674 settings .AUTH_USER_MODEL ,
674675 verbose_name = _ ("modified by" ),
675676 on_delete = models .SET_NULL ,
676- null = True ,
677+ null = True , blank = True ,
677678 related_name = "modified_by_dref_operational_update" ,
678679 )
679680 dref = models .ForeignKey (Dref , verbose_name = _ ("Dref" ), on_delete = models .CASCADE )
@@ -994,6 +995,7 @@ class Meta:
994995
995996 def save (self , * args , ** kwargs ):
996997 # self.status = Dref.Status.COMPLETED if self.is_published else Dref.Status.IN_PROGRESS
998+ self .full_clean () # required for choice field validation
997999 super ().save (* args , ** kwargs )
9981000
9991001 @staticmethod
@@ -1024,14 +1026,14 @@ class DrefFinalReport(models.Model):
10241026 settings .AUTH_USER_MODEL ,
10251027 verbose_name = _ ("created by" ),
10261028 on_delete = models .SET_NULL ,
1027- null = True ,
1029+ null = True , blank = True ,
10281030 related_name = "created_by_dref_final_report" ,
10291031 )
10301032 modified_by = models .ForeignKey (
10311033 settings .AUTH_USER_MODEL ,
10321034 verbose_name = _ ("modified by" ),
10331035 on_delete = models .SET_NULL ,
1034- null = True ,
1036+ null = True , blank = True ,
10351037 related_name = "modified_by_dref_final_report" ,
10361038 )
10371039 dref = models .OneToOneField (Dref , verbose_name = _ ("Dref" ), on_delete = models .CASCADE )
@@ -1291,6 +1293,7 @@ class Meta:
12911293 verbose_name_plural = _ ("Dref Final Reports" )
12921294
12931295 def save (self , * args , ** kwargs ):
1296+ self .full_clean () # required for choice field validation
12941297 if self .financial_report_id and self .financial_report_id != self .__financial_report_id :
12951298 pages = convert_from_bytes (self .financial_report .file .read ())
12961299 if len (pages ) > 0 :
0 commit comments