`` –Db-filter``

Основная цель –db-filter` - не спрашивать пользователя, какую базу данных ему нужно использовать (он может этого не знать). Это реализуется путем проверки адреса HOST, который был использован.

Например, у вас есть два независимых веб-сайта, например, `` shop1.example.com`` и `` shop2.example.com``, которые указывают на один и тот же сервер odoo с двумя базами данных. Используя `` –db-filter``, вы можете настроить odoo на использование соответствующей базы данных в зависимости от используемого адреса хоста. Проверьте ссылки на документацию ниже или перейдите к примерам, чтобы узнать, как это сделать.

Документы

Официальная документация: https://www.odoo.com/documentation/master/setup/deploy.html#dbfilter

Основной код: https://github.com/odoo/odoo/search?l=Python&q=%22def+db_monodb%22

Дополнительная опция: https://github.com/OCA/server-tools/tree/11.0/dbfilter_from_header

Примеры

Единая база данных

Если у вас есть одна база данных, вы можете установить фильтр по умолчанию:

--db-filter=.*

Игнорирование других баз данных

Чтобы заставить odoo всегда использовать только одну базу данных, скажем `` mydb``, используйте следующий фильтр

--db-filter=^mydb$

Имена баз данных равны имени хоста

--db-filter=^%h$

Чтобы использовать фильтр выше, вы должны назвать базы данных равными адресу хоста, например:

  • `` shop1.example.com`` - имя первой базы данных
  • `` shop2.example.com`` - имя второй базы данных
  • `` www.super-shop.example.com`` - название третьей базы данных
  • `` it-projects.info`` - название четвертой базы данных

Предупреждение

этот фильтр не может работать с префиксом `` www`` и без него одновременно

Имена баз данных, равные поддомену

--db-filter=^%d$

Чтобы использовать фильтр выше, вы должны назвать базы данных равными поддомену, например, если имя базы данных равно `` shop``, тогда фильтр будет использовать его для любого из следующих запросов:

  • `` shop.example.com``
  • `` Www.shop.example.com``
  • `` shop.yourbrand.example``
  • `` Www.shop.yourbrand.example``