Подскажите по примеру (код так себе, не судите строго). Из search есть прямое обращение в result. Но так делать неверно. Как правильно создавать связи между апами? Правильно ли для этой цели использовать кастомный менеджер в result?
В принципе нет ничего страшного, чтобы импортить напрямую. Если есть необходимость, можно по аналогии с кастомной моделью пользователя в django - хранить имя модели в настройках + плюс иметь функцию возвращающую саму модель
Т.е. можно и так: добавить кастомный менеджер и передавать ему данные (например эти), а уже в нем крутить этими данные как надо между разными моделями в приложении? А про кастомную модель видимо вот про это?
Konstantin Kruglov: Вы можете создать кастомный менеджер, а в нем метод, например create_search, в итоге сможете создавать search с result'ами с помощью Search.objects.create_search(...). Но вы все равно напрямую будете вызывать модель Result в коде метода менеджера. Если вы не хотите этого делать по каким-то причинам (мне в голову приходит только одна - название модели может измениться) - можете вынести название модели в settings.py, и написать функцию возвращающую класс модели из этого названия https://github.com/django/django/blob/master/djang... В итоге сможете в коде обращаться к модели Result так - get_result_model().objects.create(...)