Как определить динамическое начальное значение в поле внешнего ключа?Django: Как определить динамическое начальное значение в поле модели ForeignKey
С кодом:
from django.db import models
from django.conf import settings
from django.contrib.sites.models import Site
class Example(models.Model):
site = models.ForeignKey(Site, initial=settings.SITE_ID)
Я следующее сообщение об ошибке:
site = models.ForeignKey(Site, initial=settings.SITE_ID)
Field.__init__(self, **kwargs)
TypeError: __init__() got an unexpected keyword argument 'initial'
Я также попытался с:
class Example(models.Model):
site = models.ForeignKey(Site, initial=Site.objects.get(id=settings.SITE_ID))
Заранее спасибо
Правильно! Оглядываясь, я начал с Model.default и закончил Field.initial, и я их перепутал. Моя проблема была на самом деле в другом месте, но спасибо, в любом случае, вы помогли мне найти решение. Кажется, нельзя определить динамическое значение по умолчанию в новой модели, а затем выполнить syncdb. Поэтому мне пришлось удалить параметр по умолчанию, сделать syncdb, а затем добавить значение по умолчанию в модель. –