2011-12-19 15 views
7

Na przykład mam 2 modele: Model1 i Model2. Model1 ma pole ForeignKey (Model2). Model2 ma metodę zwracającą wszystkie instancje Model1, która ma to wystąpienie Model2 jako ForeignKey.Zamawianie definicji modeli Django

Ale to nie działa, ponieważ MODEL2 jest zdefiniowana po model1 a ona nic nie wie o MODEL2. Jak rozwiązać ten problem?

+1

[Możliwy duplikat] (http://stackoverflow.com/q/5308895/183066). Co musisz zrobić, to użyć ciągów zgodnie z [tą odpowiedzią] (http://stackoverflow.com/a/5309027/183066). – jcollado

Odpowiedz

2
class Model1(models.Model): 
    model2 = models.ForeignKey('Model2') 


class Model2(models.Model): 
    """Another model""" 
1

Czy naprawdę trzeba tę metodę, która zwraca wszystkie instancje modelu MODEL1 które mają ten klucz obcy? Możesz użyć odpowiedniego menedżera pól z modelu 2, aby to osiągnąć. Model2.field_in_model1_set.all()?

Powiązane problemy