带参数的 Django urls.reverse

标签 django url testing reverse

在这个问题上停留了一段时间:

在 Django pytest 中我正在尝试做

req = RequestFactory().get(reverse('app_name:app_view_name')) 

但我要求 url 末尾有“/[number]”,以便 UpdateView 能够识别该数字并显示模型中的适当形式。

在浏览器中,链接和表单提交都工作正常,但我无法在测试中使用reverse()。我尝试过:

req = RequestFactory().get(reverse('app_name:app_view_name', args=[1])) 

req = RequestFactory().get(reverse('app_name:app_view_name'), kwargs=['pk'=1])

但是这些都不起作用。我只是想构建在末尾添加“/1”的 url。

非常感谢任何帮助。

最佳答案

它期望 dictionary ,就像您可以在 the documentation 中找到的那样:

RequestFactory().get(reverse('app_name:app_view_name'),
                     <b>{'pk': 1}</b>)

关于带参数的 Django urls.reverse,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47353740/

相关文章:

java - 我需要在 jmeter 中打开 .html 文件

python - 使用键中的冒号解析 JSON

django - 将数据自动索引到 elasticsearch

css - 将学区 Logo 与 URL 学区 ID 相匹配

regex - 在 Nginx 重写中处理多个参数

php - 在 Symfony 测试中控制依赖关系

android - 在没有无线契约(Contract)的 Android 设备上测试,如 AT&T 或 Verizon 等

javascript - 从 Django 中同一页面上的多个按钮发起 AJAX 请求

python - Django 中的 URL 解析有两种模式

regex - Django urls.py 正则表达式不匹配?