在term中运行Django python文件

2024-05-15 02:28:08 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个Python文件,它是Django框架的一部分,名为facade.py

from django.conf import settings
from .gateway import Gateway

class Facade(object):


def __init__(self):
    self.gateway = Gateway(
        settings.password,
        settings.username,
        )

我想在我的终端窗口中测试这个代码。这就是我尝试过的:

within virutal-env
python
>>> from my.apps.app.facade import Facade
>>> object = Facade()

但这给了我一个错误 导入错误:无法导入设置,因为环境变量DJANGO_Settings_MODULE未定义。

为什么?


Tags: 文件djangofrompyimportself框架settings
3条回答

由于此函数使用Django,因此不足以在python shell中运行它。要运行Django文件,需要加载很多东西,如设置、模型等。

不能从python shell访问和运行django项目。Django不知道你想做什么项目。

你必须做这些事情之一:

  1. python manage.py shell
  2. 将OS中的DJANGO_SETTINGS_MODULE环境变量设置为mysite.SETTINGS
  3. 在python解释器中使用setup_environ:

    from django.core.management import setup_environ
    from mysite import settings
    setup_environ(settings)
    

第一种是最简单最好的方法。在django shell中运行代码。

不应该在普通的Python shell中执行此操作。通过执行./manage.py shell而不仅仅是python来使用Django配置shell。

尝试添加以下内容:

from django.conf import settings

if not settings.configured:
    settings.configure()

祝你好运!

相关问题 更多 >

    热门问题