我正在使用 Django 创建一个站点,该站点为各种生产者和消费者提供单独的 Web UI 。两个 UI(或“子站点”)都有不同的布局、菜单和图形。然而,他们访问相同的数据库和模型,只是从不同的方面(生产者与消费者......)。它都托管在一个域下,UI 区分是通过 URL 完成的。
当我想将 CMS 集成到该系统以处理菜单结构和文本内容时,问题就来了。我应该如何处理不同 UI 的两个不同菜单?我查看了 django-cms 和 django-page-cms,它们似乎只维护一个菜单层次结构。
有任何想法吗?
一个肮脏的解决方案是为 CMS 中的每个 UI 的菜单项添加不同的前缀,并破解 CMS 代码,以便它只插入正确 UI 的菜单项(作为 show_menu 模板标签的参数给出)。
一个更好的方法是如果可以有多个 CMS 应用程序实例,那么每个实例都有自己的数据库表。但这对于 django 和例如 django-cms 或 django-page-cms 是否可行?
一些进一步的限制:
- CMS 必须支持本地化
- 我更喜欢运行单个 Django 实例,以保持配置和测试简单