Django模型默认

时间:2016-07-21 17:00:19

标签: django django-models

我将“default = OtherModel.get_first()”添加到我的模型中,并执行了“python manage.py makemigrations”,我收到以下错误。我怎么能绕过这个?

 File "/opt/titan/local/lib/python2.7/site-packages/django/db/migrations/writer.py", line 464, in serialize
    "topics/migrations/#migration-serializing" % (value, get_docs_version())
ValueError: Cannot serialize: <ConventionTypes: HY - Half Year>
There are some values Django cannot serialize into migration files.
For more, see https://docs.djangoproject.com/en/1.8/topics/migrations/#migration-serializing


class MyModel(models.Model):
    field = models.ForeignKey(OtherModel, blank=False, null=False, default=OtherModel.get_first()) 

1 个答案:

答案 0 :(得分:1)

试试这个:

def get_default():
    return OtherModel.get_first()

class MyModel(models.Model):
    field = models.ForeignKey(OtherModel, blank=False, null=False, default=get_default) 

你也可以硬编码 pk ,但这很难看。