gpt4 book ai didi

python初学者: import mysite.管理失败?

转载 作者:行者123 更新时间:2023-11-28 17:51:11 25 4
gpt4 key购买 nike

免责声明:我是 python 和 django 的新手,但有 Drupal 编程经验。我使用的是 Windows 7(在 Windows XP 上也有同样的问题)

在python 2.7和Django-1.3.1上,我成功创建了一个默认项目

django-admin.py startproject djsite

现在,我需要按照此处 (http://www.pyinstaller.org/wiki/Recipe/DjangoApplication) 的说明在位于 djsite 父目录中的名为 bootstrap.py 的文件中“引导”djsite.manage,如下所示:

import djsite.manage
djsite.manage.execute_manager(djsite.manage.settings,['manage.py', 'runserver'])

然而,一旦编译器看到:

import djsite.manage

我明白了:“错误:在包含‘C:\Python27\Lib\site-packages\djsite\manage.pyc’的目录中找不到文件‘settings.py’。看起来你已经定制了东西......你会必须运行 django-admin.py,将它传递给你的设置模块。”而且,我不知道在这种情况下如何遵循错误的建议。

但是,如果我改为在 bootstrap.py 中发出以下命令:

import os, sys
sys.path.append(os.path.abspath('djsite'))
import djsite.manage
djsite.manage.execute_manager(djsite.manage.settings,['manage.py', 'runserver'])

脚本工作正常,但它破坏了 Pyinstaller(我已经在该软件的邮件列表 (http://groups.google.com/group/pyinstaller/browse_thread/thread/174a72e26c26a44c) 上问过这个问题)。即使我在我的 PATH 变量中添加 djsite 的路径,我得到了同样的错误。

所以我的问题是:为什么使用这种方法导入 manage.py 模块会失败,我该如何继续?谢谢!

最佳答案

尝试将此添加到您的 bootstrap.py 以通知它您的设置文件所在的位置:

import os
os.environ['DJANGO_SETTINGS_MODULE'] = 'djsite.settings'

这将假定 djsite 在您的 pythonpath 中。也就是说,如果它位于此处:/path/to/my/djsite,那么这应该在您的 pythonpath 中:/path/to/my

实际上,从一开始就执行此操作的最佳方法是使用 virtualenv这将确保您的环境是正确的。如果我还记得 Bootstrap 的话,我觉得那一定是你教程的一部分。如果您使用的是 virtualenv,请确保您记得 source bin/activate

如果这不起作用,您可以尝试更改 runserver 命令:

args = ['manage.py', 'runserver', '--settings=/path/to/my/djsite/settings.py']
djsite.manage.execute_manager(djsite.manage.settings, args)

关于python初学者: import mysite.管理失败?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9446458/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com