У меня есть модель, которую я хотел бы разбить на несколько таблиц базы данных. Все данные и функциональные возможности будут одинаковыми, поэтому я хотел бы использовать один и тот же модуль/ecto.model, но просто иметь таблицу, в которой он сохранен, в разных. Кроме того, я не буду знать до тех пор, пока не будет указано имя таблицы.Как вы можете динамически установить имя таблицы схем для модели ecto
Может ли кто-нибудь предложить способ динамически установить имя таблицы SCHEMA?
Я не знаю ответа на ваш вопрос, но еще одним соображением может быть использование одного и того же имени таблицы, но использование разных репозиториев. Или, если вы используете postgres, вы можете взглянуть на citus, который обрабатывает прозрачное изображение в приложении. – Homan
Для выбора вы можете передать кортеж табличного имени/схемы следующим образом: 'from p in {" posts2 ", Post}, где p.id == 1'. Для вставки вы можете передать имя таблицы в 'Repo.insert_all (" posts2 ", [...])', но я не уверен, как это сделать с помощью 'Repo.insert'. – Dogbert
@ Dogbert спасибо, ваш комментарий спас мне много времени сегодня вечером! –