7

我有一个 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?然后我会得到什么

4

2 回答 2

2

FolderA 是 Django 项目文件夹,folderB 是 Django 应用程序文件夹。

我没有使用用户配置文件,但根据文档(https://docs.djangoproject.com/en/dev/topics/auth/#storing-additional-information-about-users)它应该包含一个包含Django 应用名称和模型名称用点隔开,所以"dumpstownapp.UserProfile"应该是正确的。如果您显示错误,有人可能会为您提供更好的帮助..

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

于 2012-06-24T17:15:49.957 回答
1

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

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

于 2017-11-01T12:02:10.900 回答