Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何在pycharm中为Django创建临时文件_Python_Django_Pycharm - Fatal编程技术网

Python 如何在pycharm中为Django创建临时文件

Python 如何在pycharm中为Django创建临时文件,python,django,pycharm,Python,Django,Pycharm,我可以从菜单“工具”->“新建临时文件…”创建临时文件 但Django设置和环境变量不会自动导入。现在有没有一种方法可以做到这一点,或者说这个特性只是用于纯python代码测试 我希望能够 from website.models import * 但是我得到了这个错误 File "/Users/user1/.virtualenvs/test-env/lib/python2.7/site-packages/django/conf/__init__.py", line 40, in _setup

我可以从菜单“工具”->“新建临时文件…”创建临时文件

但Django设置和环境变量不会自动导入。现在有没有一种方法可以做到这一点,或者说这个特性只是用于纯python代码测试

我希望能够

from website.models import *
但是我得到了这个错误

File "/Users/user1/.virtualenvs/test-env/lib/python2.7/site-packages/django/conf/__init__.py", line 40, in _setup
% (desc, ENVIRONMENT_VARIABLE))

感谢@Leistungsabfall,这里有一个有效的解决方案:-)


您不需要向sys.path添加任何内容。这适用于Python 3.7+、Django 2.1+和PyCharm 2019+:

import os

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "APPNAMEHERE.settings")

import django
django.setup()

将此项添加到临时文件的顶部,以访问Django应用程序。关于的更多信息。

这不是全部例外。没错。当您试图在不加载django环境变量的情况下从python访问django类时,这是一个常见的异常。PyCharm有两种类型的调试环境。一个用于纯python,另一个用于django,它会自动为您加载所有django变量。我想他们并没有为临时文件这样做。也许他们将来会允许您创建django scratch文件。在PyCharm中,您有默认的python shell,然后是来自django的manage.py的shell(命令:
manage.py shell
)。您试图实现的目标可以使用一些变通方法来实现,基本上您希望在一个简单的python脚本中使用Django。对于大多数Django版本来说,程序是不同的,但是看看,做一些谷歌研究,你会发现:)很棒。成功了:-)
import os

os.environ.setdefault("DJANGO_SETTINGS_MODULE", "APPNAMEHERE.settings")

import django
django.setup()