2012-08-31 167 views
1

我的问题是相当困难的话来包装,但让我们试试:Django项目名称

我觉得它更容易用图表来解释我的问题表明我的Django项目结构:

PROJECT1 ---- ----/PROJECT1

     settings.py 
         urls.py 
         models.py 
         views.py 
      manage.py 

      /App1 
         urls.py 
         models.py 
         views.py 

现在,在我的应用1 views.py,我怎么可能做到 “project1.models导入*” 没有硬编码 “PROJECT1”?相反,我需要有一个主项目的动态名称(在这种情况下为project1)。

我的目标是我可以在我的下一个项目中使用这个相同的结构,并尽可能少地改变代码。在这种情况下,目前我需要将App1视图中的那一行更改为我的项目的名称。

谢谢!

+0

为什么你有模型和视图在项目目录? –

+0

没有理由的意见(只是复制/粘贴来自另一个文件夹的示例),但模型为我想拥有在一个地方相关的所有网站。就像这个特定网站的不同页面或这些网页的内容一样。网站的其他部分(菜单,图库等)都是单独的应用程序,它们只能从主要模型中获取实际内容。他们与任何项目合作,因为内容是可用的。所以理论上这只能通过将Project1更改为另一个站点来实现。如果需要,可以启用或禁用应用程序 - 但该网站及其内容位于该主文件夹中。 – user1000736

回答

3

您可以使用relative imports

from ..models import * 
+0

哇,那很容易?我现在有点担心;如果事情听起来很容易成真,那很可能是。特别是在编程中......只要我回到我的代码,我就会放弃它,欢呼! – user1000736