models.model类中的Django默认模型字段

models.model类中的Django默认模型字段,django,django-models,Django,Django Models,我有一门课: class Something(models.Model): field1 = Charfield() field2 = Charfield() field3 = Integerfield() 我想给每个注册了一些默认模型的用户。好的 default_something = [ {'field1':'char1', 'field2':'char2', 'field3':'int1', }, {

我有一门课:

class Something(models.Model):
     field1 = Charfield()
     field2 = Charfield()
     field3 = Integerfield()
我想给每个注册了一些默认模型的用户。好的

 default_something = [
     {'field1':'char1',
      'field2':'char2',
      'field3':'int1',
      },
     {'field1':'char3',
      'field2':'char4',
      'field3':'int2',
     }]
现在我想在类的save方法中根据代码中的名称引用默认值。。。但是它应该只选择默认的,而不是那些用户可能已经添加了相同名称的

因此,我保留了一个额外的字段field4,它保留了一个整数(默认的\u id),然后我可以根据这个默认的\u id进行选择


这是最好的方法吗?或者应该如何操作?

您不需要第四个字段,您可以获得该字段的默认值,例如
field1
,如下所示:

field1 = Something._meta.get_field_by_name('field1')
field1.default

但是,如果用户创建的字段具有相同的名称,该怎么办?或者我应该确保用户不能创建同名的字段“创建字段”是什么意思?我认为您的用户无法轻松地在数据库中创建字段I抱歉,如果用户创建了一个模型实例,其中field1具有相同的值,您将一次处理一个对象,如果一个对象的field1为空,那么该对象将具有与其他对象相同的默认值。用一个词-你只能为一个字段定义一个默认值。啊,这不是我想要的,我有不同的默认值,应该在用户注册时创建。