我有这段代码:
return redirect('shops:edit_shop', details['bio'])
基本上它会重定向到edit_shop
视图,其中一个url
参数bio
的值为测试Instagram API 。
这是我的观点:
def edit_shop_page(request, bio):
print bio
return render(request, 'shops/profile/edit_form.html')
令我惊讶的是,print bio
部分只打印第一个单词,即测试一词。
简而言之,我发送的参数值为测试Instagram API ,只接收测试。
为什么会这样?我该如何解决这个问题?
urls.py
的相关部分:
url(r'^edit-shop/(?P<bio>[\w_.]+)', edit_shop_page, name='edit_shop'),
答案 0 :(得分:2)
url(r'^edit-shop/(?P<bio>[\w_.]+)', edit_shop_page, name='edit_shop'),
你的正则表达式会破坏第一个空格后的单词,也可以尝试允许空格,例如
url(r'^edit-shop/(?P<bio>[\w ]+)', edit_shop_page, name='edit_shop'),