モデルがあるとします:
class SomeModel(models.Model):
id = models.AutoField(primary_key=True)
a = models.CharField(max_length=10)
b = models.CharField(max_length=7)
現在、デフォルトの管理者を使用して、このタイプのオブジェクトを作成/編集しています。管理者からフィールドb
を削除して、各オブジェクトが値で作成できないようにする0000000
?のデフォルト値
editable
をFalse
に設定し、default
をデフォルト値に設定します。
http://docs.djangoproject.com/en/dev/ref/models/fields/#editable
b = models.CharField(max_length=7, default='0000000', editable=False)
また、id
フィールドは不要です。 Djangoは自動的に追加します。
次のようにデフォルトを設定できます:
b = models.CharField(max_length=7,default="foobar")
次に、次のようにモデルの管理クラスでフィールドを非表示にできます。
class SomeModelAdmin(admin.ModelAdmin):
exclude = ("b")
次のように、デフォルトフィールドで呼び出し可能オブジェクトを使用することもできます。
b = models.CharField(max_length=7, default=foo)
そしてcallableを定義します:
def foo():
return 'bar'