Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/340.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python Django:配置不正确的url:不平衡的括号_Python_Django - Fatal编程技术网

Python Django:配置不正确的url:不平衡的括号

Python Django:配置不正确的url:不平衡的括号,python,django,Python,Django,我正在我的Mac上开发一个虚拟机网站,然后部署到远程UAT服务器上。虚拟机使用与UAT和实时服务器相同的操作系统和软件堆栈进行设置。尝试访问我网站的UAT版本时,我遇到以下错误: "^accounts/update-user-group/(?P<pk>\d" is not a valid regular expression: unbalanced parenthesis “^accounts/update user group/(?P\d)”不是有效的正则表达式:括号不平衡 乍

我正在我的Mac上开发一个虚拟机网站,然后部署到远程UAT服务器上。虚拟机使用与UAT和实时服务器相同的操作系统和软件堆栈进行设置。尝试访问我网站的UAT版本时,我遇到以下错误:

"^accounts/update-user-group/(?P<pk>\d" is not a valid regular expression: unbalanced parenthesis
“^accounts/update user group/(?P\d)”不是有效的正则表达式:括号不平衡
乍一看,问题似乎很明显:给定的URL模式不完整。但是,my urls.py文件具有正确的完整URL:

# -*- coding: utf-8 -*-

from django.conf import settings
from django.utils.translation import ugettext_lazy as _
from django.conf.urls import patterns, url

from views import UserGroupList, UserGroupDetail
from views import UserGroupCreate, UserGroupUpdate, UserGroupDelete
from views import UserDeletedGroups, RecoverDeletedGroup


urlpatterns = patterns('',
    url(_(r'^accounts/create-user-group/$'), UserGroupCreate.as_view(), name='user_group_create'),
    url(_(r'^accounts/update-user-group/(?P<pk>\d+)/$'), UserGroupUpdate.as_view(), name='user_group_update'),
    url(_(r'^delete/(?P<pk>\d+)/$'), UserGroupDelete.as_view(), name='user_group_delete'),
    url(_(r'^accounts/user-group-deleted/$'), UserDeletedGroups.as_view(), name='user_group_deleted_list'),
    url(_(r'^recover/(?P<pk>\d+)/$'), RecoverDeletedGroup.as_view(), name='user_group_recover_deleted'),
    url(_(r'^accounts/user-group-details/(?P<pk>\d+)/$'), UserGroupDetail.as_view(), name='user_group_detail'),
    url(_(r'^accounts/user-group-list/$'), UserGroupList.as_view(), name='user_group_list'),
)
#-*-编码:utf-8-*-
从django.conf导入设置
从django.utils.translation导入ugettext\u lazy作为_
从django.conf.url导入模式,url
从视图导入UserGroupList、UserGroupDetail
从视图导入UserGroupCreate、UserGroupUpdate、UserGroupDelete
从视图导入UserDeletedGroup,恢复DeletedGroup
urlpatterns=模式(“”,
url(“^accounts/create user group/$”),UserGroupCreate.as\u view(),name='user\u group\u create'),
url(“^accounts/update user group/(?P\d+)/$”),UserGroupUpdate.as\u view(),name='user\u group\u update'),
url(“^delete/(?P\d+)/$”),UserGroupDelete.as\u view(),name='user\u group\u delete'),
url(“^accounts/user group deleted/$”),UserDeletedGroups.as\u view(),name='user\u group\u deleted\u list'),
url(“^recover/(?P\d+/$”),RecoverDeletedGroup.as\u view(),name='user\u group\u recover\u deleted'),
url(“^accounts/user group details/(?P\d+)/$”),UserGroupDetail.as\u view(),name='user\u group\u detail'),
url(“^accounts/user group list/$”),UserGroupList.as\u view(),name='user\u group\u list'),
)
因此,错误似乎是由urlpatterns中的第二个正则表达式生成的。但是,如果我将正则表达式更改为:

url(_(r'^accounts/update-user-group/(?P<pk>[\d]+)/$'), UserGroupUpdate.as_view(), name='user_group_update'),
url({ur'^accounts/update user group/(?P[\d]+)/$),UserGroupUpdate.as\u view(),name='user\u group\u update'),
然后错误移到下一行。我在这里所做的就是在
\d

对于pk参数。这个简单的差异怎么可能是错误的原因?为什么它只发生在我的UAT环境中而不是本地开发中?

Daniels的问题为我指明了正确的方向。我的PO文件中问题URL的翻译不完整,因此确保正确解决了我的问题。

你是在用ugettext包装你的正则表达式字符串吗?因为这是一个国际网站,可翻译的URL是其中一项要求。我们已经做了一年,以前没有造成任何问题。事实证明,这并没有造成问题,因为我们的PO文件中没有该URL的翻译。没有谢谢丹尼尔,你的问题给我指出了正确的方向direction@hellsgate添加你的解决方案作为答案并接受它-它可能会帮助将来遇到的人this@TimmyO谢谢,我需要等两天才能接受自己的回答