相关疑难解决方法(0)

如何从Django shell执行Python脚本?

我需要从Django shell执行Python脚本.我试过了:

./manage.py shell << my_script.py
Run Code Online (Sandbox Code Playgroud)

但它没有用.它只是在等我写点什么.

python django django-shell

224
推荐指数
12
解决办法
19万
查看次数

Django 1.7抛出django.core.exceptions.AppRegistryNotReady:模型尚未加载

这是我的Windows系统上的追溯.

Traceback (most recent call last):
  File "D:\AMD\workspace\steelrumors\manage.py", line 9, in <module>
    django.setup()
  File "D:\AMD\Django\django-django-4c85a0d\django\__init__.py", line 21, in setup
    apps.populate(settings.INSTALLED_APPS)
  File "D:\AMD\Django\django-django-4c85a0d\django\apps\registry.py", line 108, in populate
    app_config.import_models(all_models)
  File "D:\AMD\Django\django-django-4c85a0d\django\apps\config.py", line 197, in import_models
    self.models_module = import_module(models_module_name)
  File "C:\Python27\lib\importlib\__init__.py", line 37, in import_module
    __import__(name)
  File "C:\Python27\lib\site-packages\registration\models.py", line 15, in <module>
    User = get_user_model()
  File "D:\AMD\Django\django-django-4c85a0d\django\contrib\auth\__init__.py", line 135, in get_user_model
    return django_apps.get_model(settings.AUTH_USER_MODEL)
  File "D:\AMD\Django\django-django-4c85a0d\django\apps\registry.py", line 199, in get_model
    self.check_models_ready()
  File "D:\AMD\Django\django-django-4c85a0d\django\apps\registry.py", line 131, in check_models_ready
    raise AppRegistryNotReady("Models aren't loaded yet.")
django.core.exceptions.AppRegistryNotReady: Models …
Run Code Online (Sandbox Code Playgroud)

python django

163
推荐指数
6
解决办法
13万
查看次数

Django停止使用RuntimeError:populate()不可重入

我一直在使用WSGI开发部署在Apache服务器上的Django Web应用程序,一切都进展顺利.今天,我对我的应用程序进行了一些小的更改,admin.py试图自定义内置的Django Admin界面,并且最初产生了语法错误(一个未闭合的括号).这意味着当我触摸wsgi.py并加载代码时(我在我的虚拟主机上以守护进程模式运行WSGI),我的网站被替换为内部服务器错误,因为WSGI在遇到语法错误时停止了.

所以我修复了语法错误,检查了我没有更多manage.py check,并触及wsgi.py重新部署.但我的网站仍然显示内部服务器错误!检查Apache日志,这是我看到的:

[Sun Nov 23 13:52:46 2014] [info] mod_wsgi (pid=19093): Create interpreter 'quotes.cs.cornell.edu|'.
[Sun Nov 23 13:52:46 2014] [info] mod_wsgi (pid=19093): Adding '/extra/www/html/quotes/quotes_django' to path.
[Sun Nov 23 13:52:46 2014] [info] mod_wsgi (pid=19093): Adding '/opt/rh/python27/root/usr/lib64/python2.7/site-
packages/' to path.
[Sun Nov 23 13:52:46 2014] [info] [client 128.84.33.19] mod_wsgi (pid=19093, process='quotes.cs.cornell.edu',
  application='quotes.cs.cornell.edu|'): Loading WSGI script '/extra/www/html/quotes/quotes_django/quotes_django/
wsgi.py'.
[Sun Nov 23 13:52:46 2014] [error] [client 128.84.33.19] mod_wsgi (pid=19093): Target WSGI script '/extra/www/html/ …
Run Code Online (Sandbox Code Playgroud)

apache django mod-wsgi django-wsgi

88
推荐指数
5
解决办法
7万
查看次数

使用django:从"python manage.py shell"到python脚本

我可以移动到python项目目录(比如c:\ www\myproject),然后发出

   python manage.py shell
Run Code Online (Sandbox Code Playgroud)

然后我可以使用django项目中的所有模块,从shell命令中说出以下命令:

import settings 
from django.template import Template, Context

t=Template("My name is {myname}.")
c=Context({"myname":"John"})
f = open('write_test.txt', 'w')
f.write(t.render(c))
f.close
Run Code Online (Sandbox Code Playgroud)

现在,当我尝试将所有命令收集到python脚本中时,说"mytest.py",我无法执行脚本.我必须错过重要的事情.

我发出了python mytest.py

然后我得到Import error: could not import settings它是在sys路径上吗?"

我在settings.py所在的项目目录中......

有人可以帮帮我吗?

谢谢.

python django

28
推荐指数
4
解决办法
4万
查看次数

在同一个数据库上同时使用SQLAlchemy和Django ORM

我有两个访问同一个数据库的应用程序.第一个客户端通过TCP连接并使用SQLAlchemy写入数据库.第二个是使用Django的更典型的webapp.两者都有读/写要求.

我想统一数据库访问层,但只选择SQLAlchemy或只是Django是没有吸引力的,因为:

  1. 我想使用django auth,权限,以及可能需要Django ORM的第三方插件(如果我错了,请纠正我).
  2. 对于第一个应用程序,使用SQLAlchemy(到目前为止)比尝试在Django应用程序之外使用Django ORM要简单得多 - 它是一个TCP/IP服务器应用程序,而不是HTTP/Web应用程序.

在同一个数据库中混合使用这两个ORM有什么问题吗?

在哪个系统(Django,SQLA)中我应该创建模型,使用某种内省如Django inspectdb

python django postgresql orm sqlalchemy

7
推荐指数
1
解决办法
2706
查看次数

运行脚本以填充django数据库

我想运行以下脚本来预先填充我的模型等名称...但是我得到一个错误.脚本是

first_names = first_names.split('\n')
last_names = last_names.split('\n')
phones=[str(i) for i in range(2310000000,2310999999, 1563)]
emails = ['test%s@test.com' %i for i in range(0,144)]

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

from customer.models import Customer
from django.contrib.auth.models import User

users = User.objects.all()

if __name__ == "__main__":
    for i in range(10):
        customer = Customer(first_name=choice(first_names), last_name=choice(last_names),
                        telephone=choice(phones),email=choice(emails), creator=choice(users))
        customer.save()
Run Code Online (Sandbox Code Playgroud)

而错误是

Traceback (most recent call last):
  File "populatedb.py", line 431, in <module>
    from customer.models import Customer
ImportError: No module named customer.models
Run Code Online (Sandbox Code Playgroud)

dir_tree是(如果我可以"正确地"绘制)

-project_dir
|
|--customer
|--|
   |--models.py(etc...)
|
|--project(the settings …
Run Code Online (Sandbox Code Playgroud)

python django external-script

6
推荐指数
1
解决办法
7162
查看次数

Python/Django独立脚本 - 不支持按文件名导入

我有以下脚本,它的意思是一个独立的Django脚本,所以我可以从命令行运行python my_script.py.它曾经与Django 1.8一起使用,在我升级到Django 1.11之后,我收到以下错误:

Traceback (most recent call last):
  File "app.py", line 8, in <module>
    django.setup()
  File "C:\python27\lib\site-packages\django-1.11.5-py2.7.egg\django\__init__.py", line 22, in setup
    configure_logging(settings.LOGGING_CONFIG, settings.LOGGING)
  File "C:\python27\lib\site-packages\django-1.11.5-py2.7.egg\django\conf\__init__.py", line 56, in __getattr__
    self._setup(name)
  File "C:\python27\lib\site-packages\django-1.11.5-py2.7.egg\django\conf\__init__.py", line 41, in _setup
    self._wrapped = Settings(settings_module)
  File "C:\python27\lib\site-packages\django-1.11.5-py2.7.egg\django\conf\__init__.py", line 110, in __init__
    mod = importlib.import_module(self.SETTINGS_MODULE)
  File "C:\python27\lib\importlib\__init__.py", line 37, in import_module
    __import__(name)
ImportError: Import by filename is not supported.
Run Code Online (Sandbox Code Playgroud)

这是我的python脚本

# standalone django setup
import os, sys, logging, django
prj_dir = os.path.abspath(os.path.dirname(os.path.dirname(__file__)))
logging.basicConfig(level=logging.INFO)
logging.info("PRJ_DIR: …
Run Code Online (Sandbox Code Playgroud)

python django

4
推荐指数
1
解决办法
1377
查看次数