1
Djangoモデルフィールドのdefault
を同じインスタンスの別のフィールドの値に基づいて定義するにはどうすればよいですか?別のフィールドの値に基づくフィールドのデフォルト値
私はcreated
タイムスタンプに基づいてモデルのcode
を定義したい:
from django.db import models
class LoremIpsum(models.Model):
code = models.CharField(
max_length=100,
default=(
lambda x: "LOREM-{0.created:%Y%m%d-%H%M%S}".format(x)),
)
created = models.DateTimeField(
auto_now_add=True,
)
default
のために定義された関数は、引数を受けないため、動作しません。
code
フィールドのデフォルト値を、そのインスタンスのcreated
フィールド値から派生するように定義するにはどうすればよいですか?
私の助言は、最初にオブジェクトを作成した後に値を設定することです。存在しないものに基づいてデフォルト値を設定することはできません。作成後にそれを行うと、 'created'フィールドを利用することができます – jape