22from functools import partial
33
44from django .conf import settings
5- from django .contrib .postgres .fields import ArrayField as PGArrayField
65from django .contrib .contenttypes import fields as ct_fields
7- from django .db import models
6+ from django .contrib . postgres . fields import ArrayField as PGArrayField
87from django .core import checks
8+ from django .db import models
99from django .db .models import CASCADE
1010from django_currentuser .db .models import CurrentUserField
1111
12- from .constants import CommonStatus , AuditStatus
12+ from .constants import AuditStatus , CommonStatus
1313from .utils import get_serial_code
1414
1515
1616class DefaultHelpTextMixin :
1717 def __init__ (self , verbose_name , * args , ** kwargs ):
18- kwargs .setdefault (' help_text' , verbose_name )
18+ kwargs .setdefault (" help_text" , verbose_name )
1919 super ().__init__ (verbose_name , * args , ** kwargs )
2020
2121
2222class NullHelpTextMixin :
2323 def __init__ (self , verbose_name , * args , ** kwargs ):
24- kwargs [' null' ] = False
25- kwargs .setdefault (' help_text' , verbose_name )
24+ kwargs [" null" ] = False
25+ kwargs .setdefault (" help_text" , verbose_name )
2626 super ().__init__ (verbose_name , * args , ** kwargs )
2727
2828
@@ -48,7 +48,7 @@ def _check_related_name(self, **kwargs):
4848
4949class AutoField (models .AutoField ):
5050 def __init__ (self , verbose_name = "主键" , ** kwargs ):
51- kwargs .setdefault (' help_text' , verbose_name )
51+ kwargs .setdefault (" help_text" , verbose_name )
5252 super ().__init__ (verbose_name , ** kwargs )
5353
5454
@@ -142,16 +142,16 @@ class JSONField(DefaultHelpTextMixin, models.JSONField):
142142
143143class ArrayField (PGArrayField ):
144144 def __init__ (self , verbose_name , base_field , ** kwargs ):
145- kwargs .setdefault (' help_text' , verbose_name )
146- kwargs .setdefault (' verbose_name' , verbose_name )
145+ kwargs .setdefault (" help_text" , verbose_name )
146+ kwargs .setdefault (" verbose_name" , verbose_name )
147147 super ().__init__ (base_field , ** kwargs )
148148
149149
150150class AutoUUIDField (models .UUIDField ):
151151 def __init__ (self , verbose_name = "主键" , ** kwargs ):
152- kwargs [' blank' ] = True
152+ kwargs [" blank" ] = True
153153 kwargs ["default" ] = uuid .uuid4
154- kwargs .setdefault (' help_text' , verbose_name )
154+ kwargs .setdefault (" help_text" , verbose_name )
155155 kwargs .setdefault ("primary_key" , True )
156156 super ().__init__ (verbose_name , ** kwargs )
157157
@@ -165,18 +165,18 @@ class DefaultCodeField(models.CharField):
165165
166166 def __init__ (self , verbose_name = "编号" , prefix = "" , ** kwargs ):
167167 self .prefix = prefix
168- kwargs [' blank' ] = True
168+ kwargs [" blank" ] = True
169169 kwargs ["default" ] = partial (get_serial_code , prefix )
170170 kwargs ["max_length" ] = self .DEFAULT_LENGTH + len (prefix )
171- kwargs [' editable' ] = False
171+ kwargs [" editable" ] = False
172172 kwargs .setdefault ("help_text" , verbose_name )
173173 super ().__init__ (verbose_name , ** kwargs )
174174
175175 def deconstruct (self ):
176176 name , path , args , kwargs = super ().deconstruct ()
177177 # Only include kwarg if it's not the default
178178 if self .prefix != "" :
179- kwargs [' prefix' ] = self .prefix
179+ kwargs [" prefix" ] = self .prefix
180180 return name , path , args , kwargs
181181
182182
@@ -186,8 +186,8 @@ class DescriptionField(models.TextField):
186186 """
187187
188188 def __init__ (self , verbose_name = "描述" , ** kwargs ):
189- kwargs .setdefault (' blank' , True )
190- kwargs .setdefault (' help_text' , verbose_name )
189+ kwargs .setdefault (" blank" , True )
190+ kwargs .setdefault (" help_text" , verbose_name )
191191 super ().__init__ (verbose_name , ** kwargs )
192192
193193
@@ -200,7 +200,7 @@ def __init__(self, verbose_name="关联的用户", to=None, on_delete=None, **kw
200200 to = to or settings .AUTH_USER_MODEL
201201 on_delete = on_delete or CASCADE
202202 kwargs .setdefault ("db_constraint" , False )
203- kwargs .setdefault (' help_text' , verbose_name )
203+ kwargs .setdefault (" help_text" , verbose_name )
204204 super ().__init__ (to = to , verbose_name = verbose_name , on_delete = on_delete , ** kwargs )
205205
206206
@@ -210,10 +210,10 @@ class UpdatedAtField(models.DateTimeField):
210210 """
211211
212212 def __init__ (self , verbose_name = "修改时间" , ** kwargs ):
213- kwargs [' editable' ] = False
214- kwargs [' auto_now' ] = True
215- kwargs .setdefault (' help_text' , ' 该记录的最后修改时间' )
216- kwargs .setdefault (' blank' , True )
213+ kwargs [" editable" ] = False
214+ kwargs [" auto_now" ] = True
215+ kwargs .setdefault (" help_text" , " 该记录的最后修改时间" )
216+ kwargs .setdefault (" blank" , True )
217217 super ().__init__ (verbose_name , ** kwargs )
218218
219219
@@ -223,10 +223,10 @@ class CreatedAtField(models.DateTimeField):
223223 """
224224
225225 def __init__ (self , verbose_name = "创建时间" , ** kwargs ):
226- kwargs [' editable' ] = False
227- kwargs [' auto_now_add' ] = True
228- kwargs .setdefault (' help_text' , ' 该记录的创建时间' )
229- kwargs .setdefault (' blank' , True )
226+ kwargs [" editable" ] = False
227+ kwargs [" auto_now_add" ] = True
228+ kwargs .setdefault (" help_text" , " 该记录的创建时间" )
229+ kwargs .setdefault (" blank" , True )
230230 super ().__init__ (verbose_name , ** kwargs )
231231
232232
@@ -236,11 +236,11 @@ class CreatedByField(CurrentUserField):
236236 """
237237
238238 def __init__ (self , * args , ** kwargs ):
239- kwargs .setdefault (' verbose_name' , ' 创建人' )
240- kwargs .setdefault (' help_text' , ' 该记录的创建者' )
241- kwargs .setdefault (' related_name' , ' %(class)s_created_by' )
239+ kwargs .setdefault (" verbose_name" , " 创建人" )
240+ kwargs .setdefault (" help_text" , " 该记录的创建者" )
241+ kwargs .setdefault (" related_name" , " %(class)s_created_by" )
242242 kwargs .setdefault ("on_delete" , models .CASCADE )
243- kwargs [' db_constraint' ] = False
243+ kwargs [" db_constraint" ] = False
244244 super ().__init__ (* args , ** kwargs )
245245
246246 def _warn_for_shadowing_args (self , * args , ** kwargs ):
@@ -253,12 +253,12 @@ class UpdatedByField(CurrentUserField):
253253 """
254254
255255 def __init__ (self , * args , ** kwargs ):
256- kwargs .setdefault (' on_update' , True )
257- kwargs .setdefault (' verbose_name' , ' 修改人' )
258- kwargs .setdefault (' help_text' , ' 该记录的修改人' )
259- kwargs .setdefault (' related_name' , ' %(class)s_updated_by' )
256+ kwargs .setdefault (" on_update" , True )
257+ kwargs .setdefault (" verbose_name" , " 修改人" )
258+ kwargs .setdefault (" help_text" , " 该记录的修改人" )
259+ kwargs .setdefault (" related_name" , " %(class)s_updated_by" )
260260 kwargs .setdefault ("on_delete" , models .CASCADE )
261- kwargs [' db_constraint' ] = False
261+ kwargs [" db_constraint" ] = False
262262 super ().__init__ (* args , ** kwargs )
263263
264264 def _warn_for_shadowing_args (self , * args , ** kwargs ):
@@ -271,11 +271,11 @@ class CreatorCharField(models.CharField):
271271 """
272272
273273 def __init__ (self , * args , ** kwargs ):
274- kwargs .setdefault (' max_length' , 128 )
275- kwargs .setdefault (' null' , True )
276- kwargs .setdefault (' blank' , True )
277- kwargs .setdefault (' verbose_name' , ' 创建者' )
278- kwargs .setdefault (' help_text' , ' 该记录的创建者' )
274+ kwargs .setdefault (" max_length" , 128 )
275+ kwargs .setdefault (" null" , True )
276+ kwargs .setdefault (" blank" , True )
277+ kwargs .setdefault (" verbose_name" , " 创建者" )
278+ kwargs .setdefault (" help_text" , " 该记录的创建者" )
279279 super ().__init__ (* args , ** kwargs )
280280
281281
@@ -285,11 +285,11 @@ class ModifierCharField(models.CharField):
285285 """
286286
287287 def __init__ (self , * args , ** kwargs ):
288- kwargs .setdefault (' max_length' , 128 )
289- kwargs .setdefault (' null' , True )
290- kwargs .setdefault (' blank' , True )
291- kwargs .setdefault (' verbose_name' , ' 修改者' )
292- kwargs .setdefault (' help_text' , ' 该记录最后修改者' )
288+ kwargs .setdefault (" max_length" , 128 )
289+ kwargs .setdefault (" null" , True )
290+ kwargs .setdefault (" blank" , True )
291+ kwargs .setdefault (" verbose_name" , " 修改者" )
292+ kwargs .setdefault (" help_text" , " 该记录最后修改者" )
293293 super ().__init__ (* args , ** kwargs )
294294
295295
@@ -299,9 +299,9 @@ class StatusField(models.PositiveSmallIntegerField):
299299 """
300300
301301 def __init__ (self , verbose_name = "状态" , ** kwargs ):
302- kwargs .setdefault (' choices' , CommonStatus .choices )
303- kwargs .setdefault (' default' , CommonStatus .VALID )
304- kwargs .setdefault (' help_text' , ' 100:已失效,75:待失效,50:有效,25:暂停中,10:待生效,5:待提交,0:删除' )
302+ kwargs .setdefault (" choices" , CommonStatus .choices )
303+ kwargs .setdefault (" default" , CommonStatus .VALID )
304+ kwargs .setdefault (" help_text" , " 100:已失效,75:待失效,50:有效,25:暂停中,10:待生效,5:待提交,0:删除" )
305305 super ().__init__ (verbose_name , ** kwargs )
306306
307307
@@ -311,17 +311,17 @@ class AuditStatusField(models.PositiveSmallIntegerField):
311311 """
312312
313313 def __init__ (self , verbose_name = "审核状态" , ** kwargs ):
314- kwargs .setdefault (' choices' , AuditStatus .choices )
315- kwargs .setdefault (' null' , True )
316- kwargs .setdefault (' blank' , True )
317- kwargs .setdefault (' help_text' , ' 该记录的审核状态' )
314+ kwargs .setdefault (" choices" , AuditStatus .choices )
315+ kwargs .setdefault (" null" , True )
316+ kwargs .setdefault (" blank" , True )
317+ kwargs .setdefault (" help_text" , " 该记录的审核状态" )
318318 super ().__init__ (verbose_name , ** kwargs )
319319
320320
321321class VirtualForeignKey (models .ForeignKey ):
322322 def __init__ (self , verbose_name , to , * args , ** kwargs ):
323323 kwargs .setdefault ("verbose_name" , verbose_name )
324- kwargs [' db_constraint' ] = False
324+ kwargs [" db_constraint" ] = False
325325
326326 if kwargs .get ("null" ):
327327 kwargs .setdefault ("blank" , True )
@@ -356,17 +356,21 @@ def __init__(self, verbose_name, to, *args, **kwargs):
356356
357357
358358class GenericForeignKey (ct_fields .GenericForeignKey ):
359- def __init__ (self , ct_field = 'content_type' , fk_field = 'object_id' , for_concrete_model = True ):
360- super ().__init__ (ct_field = ct_field , fk_field = fk_field , for_concrete_model = for_concrete_model )
359+ def __init__ (
360+ self , ct_field = "content_type" , fk_field = "object_id" , for_concrete_model = True
361+ ):
362+ super ().__init__ (
363+ ct_field = ct_field , fk_field = fk_field , for_concrete_model = for_concrete_model
364+ )
361365
362366
363367class GenericRelation (ct_fields .GenericRelation ):
364368 def __init__ (
365369 self ,
366370 verbose_name ,
367371 to ,
368- object_id_field = ' object_id' ,
369- content_type_field = ' content_type' ,
372+ object_id_field = " object_id" ,
373+ content_type_field = " content_type" ,
370374 for_concrete_model = True ,
371375 related_query_name = None ,
372376 limit_choices_to = None ,
0 commit comments