我正在学习https://testdriven.io/courses/tdd-django/deployment/的教程。当我在没有访问postgres的情况下请求get时,一切都运行得很好,http://ancient-waters-04623.herokuapp.com/ping/将返回200状态
我完成了迁移和播种数据
$ heroku run python manage.py migrate
$ heroku run python manage.py loaddata movies.json当我在浏览器中运行http://ancient-waters-04623.herokuapp.com/api/movies/时,它会显示错误500
日志:
$ heroku logs --app=ancient-waters-04623 --tail2020-09-07T10:13:51.045281+00:00 host路由器: at=info method=GET path="/ping/“host=herokurouter waters-04623.herokuapp.com dyno=web.1 connect=0ms service=4ms status=200 bytes=225 protocol=http
我尝试通过dbeaver连接数据库,它连接并加载了正确的数据。
我在heroku和django都是新手,任何帮助都将不胜感激。
提前感谢
发布于 2020-10-13 07:02:03
当我访问时,我也得到了一个500
https://APP_NAME.herokuapp.com/api/movies/我在Dockerfile.prod中打开了调试模式,并能够查看包含预期数据的DRF Browsable API。
这让我验证了。
if not DEBUG:
REST_FRAMEWORK = {
"DEFAULT_RENDERER_CLASSES": (
"rest_framework.renderers.JSONRenderer",
)
}...in settings.py,我确定我错过了最后的',‘(另请参阅:https://testdriven.io/courses/tdd-django/deployment/#H-1-browsable-api)
在修复该问题并在Dockerfile.prod中再次禁用调试模式后,我重新构建了镜像,将其推送到heroku容器注册表并将其释放。现在,我从下面获得了预期的JSON响应
https://APP_NAME.herokuapp.com/api/movies/https://stackoverflow.com/questions/63775730
复制相似问题