Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/url/2.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/powerbi/2.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
Django:通过提交按钮动态url_Django_Url_Button_Dynamic - Fatal编程技术网

Django:通过提交按钮动态url

Django:通过提交按钮动态url,django,url,button,dynamic,Django,Url,Button,Dynamic,我想在数据库中使用动态url和Django作为搜索选项。我为我的搜索词实现了一个输入文本字段和一个提交按钮来启动查询。因此,当我单击按钮时,搜索结果的新url应该包括用户编写的文本字段中的术语 如何使用提交按钮而不是超链接实现动态url?如何将文本字段的值输入url?你能帮帮我吗 这是我的非工作代码的一部分: url.py urlpatterns = patterns('', url(r'^$', views.IndexView.as_view(), name='index'), url(

我想在数据库中使用动态url和Django作为搜索选项。我为我的搜索词实现了一个输入文本字段和一个提交按钮来启动查询。因此,当我单击按钮时,搜索结果的新url应该包括用户编写的文本字段中的术语

如何使用提交按钮而不是超链接实现动态url?如何将文本字段的值输入url?你能帮帮我吗

这是我的非工作代码的一部分:

url.py

urlpatterns = patterns('',
url(r'^$', views.IndexView.as_view(), name='index'),   
url(r'^search/(?P<term>\w{2}_[0-9.]+)/$', views.search, name='search'),)
results.html

<form action="{% url 'app:search/{{term}}' %}" method="get">
{% csrf_token %}
             <input id="text_id" type="text"  name="term" maxlength="20"  />
             <input type="submit" value="submit" name="submit"/>
</form>

这不是你做表单的方式:但你不需要这样做。表单提交的GET请求自动包含表单中的参数,这就是要点:因此,如果您提交到路径/搜索,并且在术语字段中搜索值text_to_,那么URL将被/search?term=text_to_be_搜索。您不需要做任何其他事情。

为什么不使用JS来完成这样的任务?从输入中获取术语,进行一些验证并将其分配给url。谢谢。不幸的是,我对js不是很熟悉。我发现了django js的反向版本,这可能会在某种程度上起作用。但是,我不知道如何将django模板连接到js。你能给我一些建议解决方案的提示吗您将如何获取输入?我如何将url分配回我的表单操作?但是现在我有了所有参数/search/?csrfmiddlewaretoken=YYABC&term=text_to_be_search&submit=submit我可以只选择一个要显示的参数吗/search/term=text\u to\u be\u searched您不需要GET表单中的CSRF令牌。谢谢:是否有可能阻止提交参数或任何其他表单参数出现在我的url中?除了我的搜索词
<form action="{% url 'app:search/{{term}}' %}" method="get">
{% csrf_token %}
             <input id="text_id" type="text"  name="term" maxlength="20"  />
             <input type="submit" value="submit" name="submit"/>
</form>