【问题标题】:Django documentation: Models; error from line 1 of codeDjango 文档:模型;代码第 1 行的错误
【发布时间】:2012-04-25 04:18:38
【问题描述】:

Django documentation on Models中,我被要求运行的第一个命令和python的响应是:

>>> from django.db import models

Traceback (most recent call last):
  File "<pyshell#0>", line 1, in <module>
    from django.db import models
  File "C:\Python26\lib\site-packages\django\db\__init__.py", line 11, in <module>
        if DEFAULT_DB_ALIAS not in settings.DATABASES:
  File "C:\Python26\lib\site-packages\django\utils\functional.py", line 184, in inner
    self._setup()
  File "C:\Python26\lib\site-packages\django\conf\__init__.py", line 40, in _setup
    raise ImportError("Settings cannot be imported, because environment variable %s is             undefined." % ENVIRONMENT_VARIABLE)
ImportError: Settings cannot be imported, because environment variable     DJANGO_SETTINGS_MODULE is undefined.

从堆栈跟踪中可以看出,我正在 python 2.6.6 中运行 django 服务器。谁能给我一个线索,让我从本教程的右脚开始?提前致谢。

【问题讨论】:

    标签: python django django-models


    【解决方案1】:

    您是否从 ./manage.py shell 运行这些命令?如果不指定项目的 settings.py 文件的位置,则无法从常规 python shell 运行 django 命令。 Django 的 ./manage.py shell 命令为您指定了这一点,从而更容易在命令行上执行 django 操作。

    如果您在当前工作目录中没有看到名为 manage.py 的文件,那么这可能意味着您不在 django 应用程序的目录中,或者您还没有启动它。

    编辑:此外,该文档是作为在应用程序的 models.py 文件中放入内容的示例,而不是您应该在命令行中输入的内容。这并不意味着它不能在命令行上运行(如果你使用 manage.py shell),但这不是文档所建议的。如果您不清楚如何启动 shell 以及哪些文件位于何处,请查看教程。

    【讨论】:

    • 谢谢!伟大的!我知道 shell 存在,但在这种情况下我完全忘记了它......我想知道为什么那个文档页面没有提到它?也许使用该 shell 的说明位于文档树的更高位置?
    • 教程中有关于为什么必须使用 shell 以及要更改哪些文件的最佳文档。
    【解决方案2】:

    你做错了。

    $ python manage.py shell
    

    【讨论】:

    • 谢谢!伟大的!我知道 shell 存在,但在这种情况下我完全忘记了它......我想知道为什么那个文档页面没有提到它?也许使用该 shell 的说明位于文档树的更高位置?
    【解决方案3】:

    answer here 绝对适用于我正在使用的交互式提示,但是我不认为第一个代码块的意图是要实际运行!在the models documentation 中的第一个代码之后,您应该将下一个代码放入在上一个教程中创建的models.py 文件中......我想这就是为什么他们巧妙地将该部分标记为“快速示例”。好头疼啊!

    此外,那段继续说“上述 Person 模型将创建一个类似...的数据库表”,这表明它从未打算按原样实际运行。

    【讨论】:

      猜你喜欢
      • 2011-04-03
      • 2021-11-08
      • 1970-01-01
      • 2011-01-09
      • 1970-01-01
      • 2011-12-18
      • 2023-01-27
      • 2011-12-17
      • 2011-05-31
      相关资源
      最近更新 更多