Я использую Django для создания сайта, который предоставляет отдельный веб-интерфейс для различных видов производителей и потребителей. Оба пользовательских интерфейса (или «дочерние сайты») имеют разные макеты, меню и графику. Однако они получают доступ к одной и той же базе данных и моделям, только с разных сторон (производитель и потребитель...). Все это размещено в одном домене, а дифференциация пользовательского интерфейса осуществляется с помощью URL-адресов.
Проблема возникает, когда я хочу интегрировать CMS в эту систему, чтобы позаботиться о структуре меню и текстовом контенте. Как мне обрабатывать два разных меню для разных пользовательских интерфейсов? Я взглянул на django-cms и django-page-cms, и они, похоже, поддерживают только одну иерархию меню.
Есть идеи?
Одним из грязных решений было бы добавить, например. другой префикс для каждого пункта меню пользовательского интерфейса в CMS и взломать код CMS, чтобы он вставлял только пункты меню для правильного пользовательского интерфейса (заданного в качестве параметра тега шаблона show_menu).
Было бы лучше, если бы можно было иметь несколько экземпляров приложения CMS, чтобы у каждого из них также были свои собственные таблицы базы данных. Но возможно ли это с django и, например. django-cms или django-page-cms?
Некоторые дополнительные ограничения:
- CMS должна поддерживать локализацию
- Я бы предпочел запустить один экземпляр Django, чтобы упростить настройку и тестирование.