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

时间:2014-11-03 09:54:23

标签: python django

我正在Mac上的VM中开发一个网站,然后将其部署到远程UAT服务器。 VM的设置与UAT和实时服务器具有相同的操作系统和软件堆栈。尝试访问我的网站的UAT版本时出现以下错误:

"^accounts/update-user-group/(?P<pk>\d" is not a valid regular expression: unbalanced parenthesis

首先看起来很明显错误:给定的URL模式不完整。但是,我的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'),
)

因此错误似乎是由urlpatterns中的第二个正则表达式生成的。但是,如果我将正则表达式更改为:

url(_(r'^accounts/update-user-group/(?P<pk>[\d]+)/$'), UserGroupUpdate.as_view(), name='user_group_update'),

然后错误移动到下一行。我在这里完成的是在\d周围添加方括号 对于pk参数。这种简单的差异怎么可能是错误的原因?为什么它只会发生在我的UAT环境而不是本地开发?

1 个答案:

答案 0 :(得分:0)

Daniels问题指出了我正确的方向。我的PO文件中问题URL的翻译不完整,因此确保正确排序我的问题。