我尝试在具有 SSH 访问权限的共享主机环境中安装 django。
我使用下载了最新版本的 Django
svn export http://code.djangoproject.com/svn/django/trunk/django django
我可以在 python shell 中导入 Django 而不会抛出任何错误。
但后来我尝试使用 django-admin.py 开始一个新项目,它开始给我抛出一堆错误,在过去的几个小时里我试图用谷歌搜索。我还是找不到它
下面是实际错误:
k4660061@server42222:~$ django-admin.py startproject klikevent
/u/k4660061/home/local/lib/python/site-packages/django/core/management/templates.py:155: Warning: 'with' will become a reserved keyword in Python 2.6
Traceback (most recent call last):
File "/u/k4660061/home/local/lib/python/site-packages/django/bin/django-admin.py", line 5, in <module>
management.execute_from_command_line()
File "/u/k4660061/home/local/lib/python/site-packages/django/core/management/__init__.py", line 442, in execute_from_command_line
utility.execute()
File "/u/k4660061/home/local/lib/python/site-packages/django/core/management/__init__.py", line 381, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/u/k4660061/home/local/lib/python/site-packages/django/core/management/__init__.py", line 261, in fetch_command
klass = load_command_class(app_name, subcommand)
File "/u/k4660061/home/local/lib/python/site-packages/django/core/management/__init__.py", line 69, in load_command_class
module = import_module('%s.management.commands.%s' % (app_name, name))
File "/u/k4660061/home/local/lib/python/site-packages/django/utils/importlib.py", line 35, in import_module
__import__(name)
File "/u/k4660061/home/local/lib/python/site-packages/django/core/management/commands/startproject.py", line 2, in <module>
from django.core.management.templates import TemplateCommand
File "/u/k4660061/home/local/lib/python/site-packages/django/core/management/templates.py", line 155
with open(old_path, 'r') as template_file:
^
SyntaxError: invalid syntax
k4660061@server42222:~$
谢谢
更新
睡个好觉后,我开始工作了!请参阅伯尼的回答。我不得不一遍又一遍地查看堆栈跟踪,但我只需要将导入语句添加到多个文件
文件是
django/utils/archive.py django/核心/管理/templates.py
以及任何抛出警告 with_statement 的文件
谢谢@Bernie
最佳答案
如果语法错误与 with
语句有关,则可能是您的生产服务器的 Python 版本比您的开发服务器的旧版本。
如果您的产品服务器运行的是 2.5 或更高版本,您可以这样做:
from __future__ import with_statement
请注意:任何 from __future__
导入都必须是第一个导入。
引用:http://docs.python.org/reference/simple_stmts.html#future
关于python - Django-admin.py 在我的共享主机环境中产生错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10015917/