Обратный поиск Django с помощью ForeignKey

У меня есть проект django, в котором есть два приложения, одно - AppA и AppB . Теперь AppA имеет модель ModelA , на которую ссылается модель ModelB в AppB , используя modelA = models.ForeignKey (ModelA, related_name = 'tricky')

Теперь, на мой взгляд, для AppA , когда он показывает ModelA , я выполняю get_object_or_404 (ModelA, pk = prim_id) . Затем я хочу получить все модели ModelB , у которых внешний ключ указывает на ModelA .

В документации сказано, что я должен выполнить mb = ModelB.objects.get (pk = prim_id) , затем mb.modela_set.all ()

Но это не удалось на mb.modela_set , и он говорит «У объекта ModelB нет атрибута 'suchsuch'» . Обратите внимание, что я добавил поле related_name в ForeignKey, так что я тоже попробовал с этим, включая mb.tricky.all () и mb.tricky_set.all () , но безрезультатно.

О, и я указал другой менеджер для AppA , где я использую objects = MyManager () , который возвращает обычный запрос, но с примененным фильтром.

В чем может быть проблема? Каков предпочтительный способ получить ссылку на ModelB ModelA ?

6
задан Bo Persson 15 December 2011 в 22:56
поделиться