>>1.有关python django命令 python manage.py sql / sqlall [引用目录]
可能好多人在跟着官方或非官方的python django教程学习的时侯,都会遇到这样一个问题,就是通过Models反射成建表的sql语句时无论怎么改配置文件都会报 not found 的错误。 后来我研究了好久才发现原因:
大家可能还记得, django内置有一个服务器,需要命令 python manage.py runserver 来启动。而启动后,这个命令行窗口就无法再执行其他命令。 好多人会以为这个时候服务已经启动了, 可以关闭这个命令行窗口。 可问题就出在这里, 一旦关闭这个窗口, 服务也就跟着被关闭了。 而使用 python manage.py sql [引用目录] 命令的时候,恰好需要从这个服务中读取相关配置。服务不可用, 配置文件读不到,所以不管你怎么改setting.py文件,都会报not found的错误。
说到这里, 大家应该清楚了。 我们只需要单开一个命令行专门开启服务用, 然后再开一个命令行窗口来执行各种命令。这个时候如果你对django有什么操作,你会在开着服务的窗口看到有日志的变化。
>>2.No module named mysqldb
使用python需要连接mysql,在配置文件中填正确用户名和密码之后,运行python manage.py syncdb,报如下错误 backend = load_backend(db['ENGINE'])
File "D:\Program Files\python\Lib\site-packages\django\db\utils.py", line 32,
in load_backend
return import_module('.base', backend_name)
File "D:\Program Files\python\Lib\site-packages\django\utils\importlib.py", li
ne 35, in import_module
__import__(name)
File "D:\Program Files\python\Lib\site-packages\django\db\backends\mysql\base.
py", line 14, in
raise ImproperlyConfigured("Error loading MySQLdb module: %s" % e)
django.core.exceptions.ImproperlyConfigured: Error loading MySQLdb module: No mo
dule named MySQLdb。
到google一搜说是需要安装连接库,解决方法:下载一个非常小的程序,安上就OK了。这个程序叫做MySQL-python-1.2.2.win32-py2.5.exe
这里有一个下载网址:http://sourceforge.net/project/downloading.php?group_id=22307&use_mirror=nchc&filename=MySQL-python-1.2.2.win32-py2.5.exe&7636932。我当初是在这里下载的。
或者,你可以去这里 http://www.djangoproject.com/r/python-mysql/ 下载安装 MySQLdb
>>3.Exception Value: No module named urls
django项目:url.py 配置
Exception Value: No module named urls
看的是django+book.pdf,书上使用的使用的是老版本的django, 如果配置为:
from django.conf.urls.defaults import *
urlpatterns = patterns('',
**(r'^admin/', include('django.contrib.admin.urls')),**
)
就会出现上面的错误;
新版本的django配置方法与以前的不同:
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
(r'^admin/', include(admin.site.urls)),
注意书写的格式
)