使用Gunicorn在Heroku上选择Django语言

2024-04-26 03:10:18 发布

您现在位置:Python中文网/ 问答频道 /正文

我在Heroku上运行一个Django应用程序,并安装了以下代码:https://github.com/st4lk/django-solid-i18n-urls

它在Django内置服务器上的工作方式与预期一样,但是当部署到Heroku时,我开始看到一些非常糟糕的问题。你知道吗

我让Gunicorn与多个worker一起运行,如果我使用此代码,语言首选项将随机开始工作(我猜这取决于请求所针对的实例)。你知道吗

例如,如果我将EN作为默认语言(不带前缀的url),DE作为第二语言,那么只要浏览/url,一切都可以正常工作。现在,如果我切换到/de/(手动输入URL或从Django语言切换器切换),main/URL开始间歇工作-如果我不断刷新页面,我会得到404或de中的页面。但是没有办法再次完全切换回使用EN。同样的情况也发生在所有其他的URL上,我要么得到404,要么得到DE中相应的页面,而且没有办法强迫它返回EN,即使是从Django的set\u语言视图。你知道吗

如果我从未接触过/de/url,那么在没有前缀url的情况下,它就可以很好地工作。你知道吗

有没有人知道如何让这个在Heroku和Gunicorn上也起作用?你知道吗


Tags: django代码https语言应用程序urlheroku情况