通过Django中的按钮调用功能

时间:2018-06-25 07:20:38

标签: django button django-urls

在我的页面之一上,我想显示一个按钮,每当单击该按钮时,我都希望在我的显示中显示以下内容:“单击按钮”。

但是以下消息会在我的控制台中显示。“” GET / account / all-plan /?print_btn =点击HTTP / 1.1“ 200 5025”

这是我的观点

def print_from_button(request):
if(request.GET.get('print_btn')):
    print('Button clicked')
return HttpResponse('testklik')

html

<form method="get">
   <input type="submit" class="btn" value="Click" name="print_btn">
</form>

并在urls.py

中输入网址
path('all-plan/print_from_button', views.print_from_button, name='print_from_button'),

谁能指出我正确的方向,我找不到我所缺少的。非常感谢!

1 个答案:

答案 0 :(得分:0)

您似乎必须使用以下网址:

  1. /account/all-plan/
  2. /account/all-plan/print_from_button

在第一个URL中,您正在创建一个使用<form>方法的GET,但未指定action属性。结果是您的表单提交到与当前页面相同的URL(第一个URL)。可以看到这是因为您的控制台打印显示它正在使用第一个URL,并带有额外的GET parameter

为了使您的表单使用正确的URL,您需要使用正确的URL指定action属性:

<form method="get" action="{% url "app_name:print_from_button" %}">
  ...
</form>