Django:使用Django-admin.py导入错误
目前,我在/Users/hobbes3/Sites/中为Django创建了两个符号链接。ls-l显示以下内容Django:使用Django-admin.py导入错误,django,Django,目前,我在/Users/hobbes3/Sites/中为Django创建了两个符号链接。ls-l显示以下内容 lrwxr-xr-x 1 hobbes3 staff 66B Feb 23 04:16 django -> /usr/local/Cellar/python/2.7.2/lib/python2.7/site-packages/django/ lrwxr-xr-x 1 hobbes3 staff 85B Feb 23 01:01 django-admin.py
lrwxr-xr-x 1 hobbes3 staff 66B Feb 23 04:16 django -> /usr/local/Cellar/python/2.7.2/lib/python2.7/site-packages/django/
lrwxr-xr-x 1 hobbes3 staff 85B Feb 23 01:01 django-admin.py -> /usr/local/Cellar/python/2.7.2/lib/python2.7/site-packages/django/bin/django-admin.py
drwxr-xr-x 15 hobbes3 staff 510B Feb 24 16:04 mysite/
其中mysite/是我根据官方民意测验教程构建的唯一Django项目
当我键入python django-admin.py时,一切正常
hobbes3@hobbes3:~/Sites$ python django-admin.py
Usage: django-admin.py subcommand [options] [args]
Options:
-v VERBOSITY, --verbosity=VERBOSITY
Verbosity level; 0=minimal output, 1=normal output,
2=all output
--settings=SETTINGS The Python path to a settings module, e.g.
"myproject.settings.main". If this isn't provided, the
DJANGO_SETTINGS_MODULE environment variable will be
used.
--pythonpath=PYTHONPATH
A directory to add to the Python path, e.g.
"/home/djangoprojects/myproject".
--traceback Print traceback on exception
--version show program's version number and exit
-h, --help show this help message and exit
Type 'django-admin.py help <subcommand>' for help on a specific subcommand.
Available subcommands:
cleanup
compilemessages
createcachetable
dbshell
diffsettings
dumpdata
flush
inspectdb
loaddata
makemessages
reset
runfcgi
runserver
shell
sql
sqlall
sqlclear
sqlcustom
sqlflush
sqlindexes
sqlinitialdata
sqlreset
sqlsequencereset
startapp
startproject
syncdb
test
testserver
validate
我注意到我可以使用Pythondjango-admin.py startproject asd很好地启动项目
我正在运行Python 2.7.2和Django 1.3.1。Django-admin.py正在查找您的settings.py文件,该文件应位于/Users/hobbes3/Sites/mysite中 如果您将cd刻录到~/Sites/mysite,然后运行django-admin.py inspectdb doors-eer,这样应该可以正常工作 这假设您在settings.py中设置了数据库变量
此外,在创建项目后,使用Django的更传统方法是在创建项目后调用manage.py inspectdb。通过调用django-admin.py,环境变量无法正确设置,django无法找到您的settings.py文件。django-admin.py正在查找您的settings.py文件,该文件应位于/Users/hobbes3/Sites/mysite中 如果您将cd刻录到~/Sites/mysite,然后运行django-admin.py inspectdb doors-eer,这样应该可以正常工作 这假设您在settings.py中设置了数据库变量
此外,在创建项目后,使用Django的更传统方法是在创建项目后调用manage.py inspectdb。通过调用django-admin.py,环境变量无法正确设置,django也找不到您的settings.py文件。Ok,因此我将cd mysite放在光盘上,然后运行python../django-admin.py inspectdb door eer,它仍然会给我同样的错误。我打开了settings.py,验证了我的数据库变量设置正确……在切换到/mysite目录后,运行python manage.py inspectdb,不带任何参数。哦,我刚刚意识到你说在mysite中使用manage.py而不是django-admin.py。谢谢你,这对我现在起作用了。现在我只需要创建一个新的临时项目来读取doors eer数据库,然后运行inspectdb。但是在将来,如何修复django-admin.py命令?当您使用python创建项目时,django-admin.py startproject myproject django将创建一个名为“myproject”的目录,并将预先填充该目录,其中包含开始使用django时所需的所有文件:settings.py manage.py url.pyOk,因此我将cd mysite,然后运行python../django-admin.py检查DB门eer,它仍然给我同样的错误。我打开了settings.py,验证了我的数据库变量设置正确……在切换到/mysite目录后,运行python manage.py inspectdb,不带任何参数。哦,我刚刚意识到你说在mysite中使用manage.py而不是django-admin.py。谢谢你,这对我现在起作用了。现在我只需要创建一个新的临时项目来读取doors eer数据库,然后运行inspectdb。但是在将来,如何修复django-admin.py命令?当您使用python创建项目时,django-admin.py startproject myproject将创建一个名为“myproject”的目录,并将使用开始使用django:settings.py manage.py url.py所需的所有文件预填充该目录
hobbes3@hobbes3:~/Sites$ python django-admin.py inspectdb doors-eer
Traceback (most recent call last):
File "django-admin.py", line 5, in <module>
management.execute_from_command_line()
File "/usr/local/Cellar/python/2.7.2/lib/python2.7/site-packages/django/core/management/__init__.py", line 429, in execute_from_command_line
utility.execute()
File "/usr/local/Cellar/python/2.7.2/lib/python2.7/site-packages/django/core/management/__init__.py", line 379, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/usr/local/Cellar/python/2.7.2/lib/python2.7/site-packages/django/core/management/__init__.py", line 261, in fetch_command
klass = load_command_class(app_name, subcommand)
File "/usr/local/Cellar/python/2.7.2/lib/python2.7/site-packages/django/core/management/__init__.py", line 67, in load_command_class
module = import_module('%s.management.commands.%s' % (app_name, name))
File "/usr/local/Cellar/python/2.7.2/lib/python2.7/site-packages/django/utils/importlib.py", line 35, in import_module
__import__(name)
File "/usr/local/Cellar/python/2.7.2/lib/python2.7/site-packages/django/core/management/commands/inspectdb.py", line 5, in <module>
from django.db import connections, DEFAULT_DB_ALIAS
File "/usr/local/Cellar/python/2.7.2/lib/python2.7/site-packages/django/db/__init__.py", line 14, in <module>
if not settings.DATABASES:
File "/usr/local/Cellar/python/2.7.2/lib/python2.7/site-packages/django/utils/functional.py", line 276, in __getattr__
self._setup()
File "/usr/local/Cellar/python/2.7.2/lib/python2.7/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.