Django可选参数未从u读取

2024-06-26 03:31:44 发布

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

我在读那条线Django optional url parameters 并按照步骤生成一个带有单个可选参数的URL。在

我的网址应该是:

/client/
/client/?clientname=John

我定义了两个urlpatterns

^{pr2}$

好吧,在这一点上,他们都呈现页面。 但是,在我看来:

def index(request, clientname='noparameter'):
    print("The searched name is: " + str(clientname))

搜索的名称总是noparameter

我做错什么了吗?在


Tags: djangoclienturl参数定义步骤johnoptional
2条回答

似乎您正在混淆关键字参数和get请求。使用关键字参数,urls.py是为其配置的,您的视图将如下所示:

def index(request, **kwargs):
    clientname = kwargs.get("clientname", "noparameter")
    print("The searched name is: " + str(clientname))

你的网址.py也必须将url更改为:

^{pr2}$

这可以在浏览器中调用,如下所示:

/client/John

你的网址是

/client/John/ 

而不是

^{pr2}$

同样,即使在下面的示例中使用John也会失败,因为您的regex是针对数字的,请查看关于django dispatcher主题的更多信息

  /client/4/ 

如果您想获取get参数,可以使用以下命令在视图中执行此操作

request.GET.get('clientanme', None)

相关问题 更多 >