如何在多站点Django项目之间导入

时间:2010-07-03 18:36:12

标签: django

如何使用Sites Framework将模型和视图从Django Site1导入Site2?

Django Sites Framework scenario

top

  ----site1

  ----site2

  ----media


#File on Site 2: views.py

from site1.article.models import Model1, Model2

1 个答案:

答案 0 :(得分:2)

Django的站点框架是关于在不同站点上共享相同的代码(最终不同的Django实例具有一个代码库和一个数据库)。

您的目录结构表明您做错了:您应该拥有多个网站应用,将您的内容放入site1并将其导入其他网站应用。

相反,您应该在站点框架的帮助下编写Django应用程序代码:

  • 在有意义的模型中添加网站参考
  • SITE_ID
  • 中设置多个Django实例,每个实例都有自己的settings.py
  • 然后可以通过Site.objects.get_current()
  • 过滤您的模型对象

您可以采用复杂的方式(模型继承,自定义管理器进行自动过滤),但这是基本描述。