글쎄, 내가 원하는 것을 이해한다면. 당신은 당신의 모델을 수정해야합니다 : 당신은 당신의 모델을 유지하기 위해 선호하는 경우에 당신이 할 수
#views.py
b = ModelB(field3 = 'goodbye')
c = ModelB(field3 = 'goodbye again')
a = ModelA(field1 = 'hello', field2 = [b, c])
d = ModelA(field1 = 'another', field2 = a.field2)
을 또는 : 그래서
#models.py
class ModelA(models.Model)
field1 = models.CharField(max_length=10)
field2 = models.ForeignKey(ModelA)
class ModelB(models.Model)
field3 = models.CharField(max_length=10)
을, 당신은 할 수
#models.py
class ModelA(models.Model)
field1 = models.CharField(max_length=10)
class ModelB(models.Model)
field2 = models.CharField(max_length=10)
field3 = models.ForeignKey(ModelA)
#views.py
a = ModelA(field1 = 'hello')
b = ModelB(field2 = 'goodbye', field3 = a)
c = ModelB(field2 = 'goodbye again', field3 = a)
d = ModelA(field1 = 'another')
#here you get all the objects related to "a"
query = ModelB.objects.filter(field3=a)
#iterated over them
for obj in query:
obj.field3 = d
내가 생각하는 또 다른 방법은 다음과 같습니다.
#models.py
class ModelA(models.Model)
field1 = models.CharField(max_length=10)
field2 = models.ForeignKey(ModelA)
class ModelB(models.Model)
field3 = models.CharField(max_length=10)
field4 = models.ForeignKey(ModelA)
#views.py
a = ModelA(field1 = 'hello')
b = ModelB(field3 = 'goodbye', field4 = a)
c = ModelB(field3 = 'goodbye again', field4 = a)
d = ModelA(field1 = 'another', field2 = a)
끝난 것 같아요. 그러나 나는 그것이 당신에게 유용 할 수 있기를 바랍니다. ^^
이것은 대답이 아닙니다. 댓글을 삭제하고 다시 게시하십시오. –
예제를 추가했습니다. 이것이 도움이되기를 바랍니다. – John