Django 我的一个URL没有被翻译,这给了我一个404错误
我目前在使用Django 1.11时遇到翻译和url模式的问题 这是我的url.pyDjango 我的一个URL没有被翻译,这给了我一个404错误,django,python-3.6,Django,Python 3.6,我目前在使用Django 1.11时遇到翻译和url模式的问题 这是我的url.py from django.conf.urls import url # noqa from django.conf.urls.i18n import i18n_patterns from django.utils.translation import gettext_lazy as _ from core.views import HomeView, SolutionsView, SolutionView
from django.conf.urls import url # noqa
from django.conf.urls.i18n import i18n_patterns
from django.utils.translation import gettext_lazy as _
from core.views import HomeView, SolutionsView, SolutionView
urlpatterns = [
url(r'^$', HomeView.as_view(), name='home'),
url(_(r'^solucoes$'), SolutionsView.as_view(), name='solutions'),
url('{solutions}/{solution}$'.format(
solutions=_(r'^solucoes'),
solution='(?P<slug>[\w-]+)'
), SolutionView.as_view(), name='solution')
]
从django.conf.url导入url#noqa
从django.conf.urls.i18n导入i18n_模式
从django.utils.translation导入gettext\u lazy作为_
从core.View导入HomeView、SolutionView、SolutionView
URL模式=[
url(r'^$',HomeView.as_view(),name='home'),
url(“^solucoes$”),SolutionsView.as“\u view(),name='solutions'),
url({solutions}/{solution}$'。格式(
解决方案=r'^solucoes'),
溶液='(?P[\w-]+)'
),SolutionView.as_view(),name='solution')
]
名为
solutions
的url有效,但solution
无效,即使在我翻译并运行compilemessages
命令时,也会出现404错误。在url模式上使用.format
无效。我注意到,正确的方法(在中使用)是将整个url包装在\uu
中
错:
url('{solutions}/{solution}$'.format(
solutions=_(r'^solucoes'),
solution='(?P<slug>[\w-]+)'
), SolutionView.as_view(), name='solution')
url({solutions}/{solution}$'。格式(
解决方案=r'^solucoes'),
溶液='(?P[\w-]+)'
),SolutionView.as_view(),name='solution')
正确:
url(_(r'^solucoes/(?P<slug>[\w-]+)/$'), SolutionView.as_view(), name='solution')
url(u(r'^solucoes/(?P[\w-]+)/$),SolutionView.as_view(),name='solution')