Я пришел из мира .NET, где ORM NHibernate может заполнять отношения внешних ключей, загружая объект по id. Загрузка объекта просто возвращает прокси этого объекта с указанным вами идентификатором. Это полезно для заполненных отношений, когда я знаю, что существует идентификатор, поскольку ему не нужно запрашивать базу данных, тем самым экономя много круговых поездок.Может SQLAlchemy заполнять отношения внешних ключей без запроса базы данных?
Вот мой сценарий. У меня есть модель клиента, которая может быть связана с одним или несколькими подразделениями. Эти разделы статически хранятся в базе данных и могут быть связаны с одним или несколькими клиентами, что требует от меня моделирования отношения «многие ко многим». Существует маршрут REST API в виде /api/v1/customers/123/divisions
, где I POST JSON данные в виде списка идентификаторов деления, {'division_ids': [1, 2, 3, 4]}
. В этом случае (использование в реальном мире могло бы равняться 20+ идентификаторам подразделения, я должен был бы выдать запрос для извлечения клиента (id 123), а также 4 запроса для извлечения разделов.
Поскольку я знаю, корочки подразделений, которые я хочу вставить, я могу заставить SQLAlchemy просто использовать идентификатор, а не извлечение объектов?
может SQLAlchemy сделать что-то подобное?
Извините, мой вопрос был не очень ясен. Я обновил его с помощью моего точного сценария. – onetwothree