1

我试图弄清楚是否有可能让 django 1.3 在heroku 上运行。我已经离开了他们的教程,假设用户使用的是最新版本(1.4)的 django。如果我按照教程进行操作,除了显式使用 Django==1.3 而不是最新的 django 版本,我在运行时会收到错误django-admin.py startproject hellodjango .(注意点)

错误:文件“/home/my_dir/.virtualenvs/hellodjango/local/lib/python2.7/site-packages/django/utils/importlib.py”,第 28 行,在 import_module raise TypeError(“相对导入需要'包“参数”)类型错误:相对导入需要“包”参数

它仍然会创建项目并出现欢迎页面http://127.0.0.1:8000/。如果我继续学习本教程并将其推送到heroku,我会得到

ImportError at / No module named hellodjango.urls

似乎教程和 django 1.3 之间的文件结构之间存在一些不匹配。

有关如何安装 Django 1.3 的说明将非常有帮助。

4

2 回答 2

1

这个 '。' 即使使用 Django 1.4,该选项对我也不起作用,我遇到与您相同的错误。所以我忽略了这个点:

django-admin.py startproject hellodjango

然后我将所有文件从 hellodjango 文件夹移动到它的父文件夹(这就是 Heroku 需要的)并删除了 hellodjango 文件夹。

遵循所有步骤,这样我就可以让应用程序在 heroku 上运行,但我又遇到了和你一样的错误,“没有名为 hellodjango.urls 的模块”。我解决了这个问题,从 settings.py 中删除了这个 hellodjango 部分,因为我将文件更改为新路径,因此 settings.py 现在反映了该更改,一切都很好。

于 2012-07-26T04:13:14.067 回答
0

这 '。' 在 ./manage.py startproject myproject 的末尾。表示“在当前目录”启动一个项目(此功能在 djago 1.4 中添加)。在 django 1.4 中,不是从 myproject import myapp 导入,而是直接导入 yourapp。您的应用程序不再与您的项目绑定。

我在网上找到了这篇文章,可以帮助您解决问题: http ://bitkickers.blogspot.com/2012/04/djangoheroku-quickstart-for-existing.html

于 2012-06-02T18:17:26.260 回答