【问题标题】:Wagtail modeltranslation doesn't work with DEBUG = FalseWagtail 模型翻译不适用于 DEBUG = False
【发布时间】:2020-12-31 21:02:37
【问题描述】:

我在缺少重定向到多语言 wagtail 网站的默认语言时遇到问题。 如果我在生产中设置DEBUG = False,我会得到Internal server error,因为不存在使用语言后缀重定向到url。如果DEBUG = True 一切正常。

我正在使用wagtail_modeltranslation

https://progtribe.com/ - 不起作用 https://progtribe.com/uk - 有效

我使用 Wagtail、Gunicorn、Nginx

在我的错误日志中,我只看到

来自 gunicorn 的日志:

如果我设置 DEBUG = True 那么我得到 302 状态码并且一切正常

# urls.py
from django.conf.urls.i18n import i18n_patterns
urlpatterns = i18n_patterns(
    url(r'', include(wagtail_urls)),
    path('dj_admin/', admin.site.urls),
    url(r'^admin/', include(wagtailadmin_urls)),
    url(r'^documents/', include(wagtaildocs_urls)),
    url(r'^search/$', search_views.search, name='search'),
)

【问题讨论】:

  • 您能否提供来自您的服务器日志的(经过编辑/清理的)回溯,以帮助我们了解 500 期间出了什么问题?
  • 另外,目前(你问了一个小时后),/ua 也为我抛出了 500 服务器错误
  • 对不起,我在第二个网址中犯了错误。不是 /ua, /uk
  • 您发布的日志不显示回溯。您可以使用 DEBUG=False 在本地复制它并显示 runserver 的输出吗?

标签: django wagtail django-modeltranslation


【解决方案1】:

我通过从主模板文件夹中删除 404.html 和 500.html 解决了这个问题。

【讨论】:

  • 如果删除 404.html / 500.html 解决了这个问题,那么这可能意味着这些模板在处理 404/500 响应的过程中抛出了错误 - 很可能,您的基本模板假设存在 page 等变量,在这种情况下不可用。
猜你喜欢
  • 2011-11-16
  • 2013-09-04
  • 1970-01-01
  • 1970-01-01
  • 2019-10-02
  • 1970-01-01
  • 2017-09-24
  • 1970-01-01
  • 2021-07-05
相关资源
最近更新 更多