如何在Django项目中找到我的项目名称?

时间:2012-06-24 16:35:56

标签: django pycharm

我有一个pycharm项目,可能是一个Django项目。也许他们是同一个,也许不是 - 我不确定这种区别。

无论如何,在我的settings.py文件中(位于project目录的根目录中,我认为这是我的pycharm项目)我有:

ROOT_URLCONF = 'dumpstown.urls'

这是否意味着dumpstown是我的项目名称?还是我的pycharm项目名称?有什么区别?因为我有一个名为dumpstownapp的文件夹,它包含我的所有models.py和view.py文件。我原以为dumpstownapp是Django项目,但我真的不知道!

所以,简明扼要:

在此文件夹设置

folderA
    folderB
        views.py
        models.py
        <other stuff>
    templates folder
    settings.py
    <other stuff>

这是“Django项目名称”〜我的意思是,如果我在models.py(如上所示)中定义了UserProfile,那么我需要的AUTH_PROFILE_MODULE条目是什么?我从django文档中得到了一些理解 - 我假设

dumpstownapp.models.UserProfile

但是从我得到的文档中

dumpstownapp.UserProfile

或许我的应用程序名为dumpstown?然后那么我得到了什么?

2 个答案:

答案 0 :(得分:2)

FolderA是Django项目文件夹,folderB是Django app文件夹。

我没有使用过UserProfile,但是根据文档(https://docs.djangoproject.com/en/dev/topics/auth/#storing-additional-information-about-users),它应该包含一个包含Django应用程序名称和模型名称的字符串,用点分隔,所以"dumpstownapp.UserProfile"应该是正确。如果你出现错误,有人可能会给你更好的帮助..

Django文档曾经说项目文件夹的父级(即folderA的父级)应该在路径上,但我相信已经改为包含项目文件夹本身(即folderA) - 因为它使Django应用程序的共享更容易。 PyCharm似乎假设是这种情况,因为按Alt + F7为新使用的模块自动添加导入会创建一个导入语句,假定folderA在导入路径上(我是PyCharm的相对新人,我'我在Django 0.96时代开始的项目中使用它,所以我可能只是设置错误..)但是folderA既是Django又是PyCharm项目(.idea文件是PyCharm存储其项目数据的地方)。

答案 1 :(得分:0)

在我的一个django-app git-submodule项目中,我需要找出使用django-app / library的Django项目的名称。为此,我试图获取该文件的路径。正在执行,在路径中找到我的包并获取它上面的文件夹。但是,事实证明,在生产服务器上,项目部署在具有不同名称的文件夹中(标准名称如www或沿着这些行的某些内容)。所以这种方式并不完全可靠。

所以我最终在django设置文件中设置了一个PROJECT变量并改为使用它。

相关问题