我正在试图弄清楚是否有可能让django 1.3在heroku上运行。我已经离开他们的tutorial,假设用户正在使用django的最新版本(1.4)。如果我按照教程,除了明确使用Django == 1.3而不是最新的django版本,我运行django-admin.py startproject hellodjango .
时会出现错误(注意点)
错误: 在import_module中输入文件“/home/my_dir/.virtualenvs/hellodjango/local/lib/python2.7/site-packages/django/utils/importlib.py”,第28行 提出TypeError(“相对导入需要'package'参数”) TypeError:相对导入需要'package'参数
它仍会创建项目,欢迎页面会出现在http://127.0.0.1:8000/
上。如果我继续学习本教程并将其推送到heroku,我会得到
在/的ImportError 没有名为hellodjango.urls的模块
似乎教程和django 1.3之间的文件结构存在一些不匹配。
有关如何安装Django 1.3的说明非常有用。
答案 0 :(得分:1)
这个'。'即使使用Django 1.4,选项对我也不起作用我会得到与你相同的错误。所以我忽略了点:
django-admin.py startproject hellodjango
然后我将所有文件从hellodjango文件夹移动到它的父文件夹(这是Heroku需要的)并删除了hellodjango文件夹。
遵循所有步骤,以便我可以在heroku上运行应用程序,但我再次遇到同样的错误,“没有名为hellodjango.urls的模块”。我解决了这个从settings.py中删除这个hellodjango部分,因为我将文件更改为新路径,所以settings.py现在反映了这一变化,一切都很好。
答案 1 :(得分:0)
'。'在./manage.py startproject myproject的末尾。表示“在当前目录中”启动项目(此功能已在djago 1.4中添加)。在django 1.4而不是从myproject导入myapp导入,您只需直接导入yourapp。您的应用不再与您的项目挂钩。
我在网上发现这篇文章可以帮助您解决问题: http://bitkickers.blogspot.com/2012/04/djangoheroku-quickstart-for-existing.html