Создание отношения в __init__ модели (в Django) - PullRequest
0 голосов
/ 19 сентября 2010

Допустим, у меня была следующая модель

class A(Models.model):
   def __init__(self,data):
      B(a=self,data=data).save()

class B(Models.model):
   data = somefieldtype
   a = Models.models.ForeignKey('A')

теперь, как вы можете подозревать, в определении этой модели есть ошибка, поскольку нельзя создать отношение к экземпляру A до вызова ainstance.save (). Тем не менее, этот метод init сделает мои контроллеры намного проще. Есть ли способ избежать этой проблемы?

1 Ответ

2 голосов
/ 19 сентября 2010

Вы можете поместить этот код в переопределенный save метод A:

def save(self,**kwargs):
   super(A,self).save(**kwargs)
   B(a=self,data=data).save()
...