Python 输入登录功能后,Jinja按钮不起作用

Python 输入登录功能后,Jinja按钮不起作用,python,html,flask,jinja2,flask-login,Python,Html,Flask,Jinja2,Flask Login,当我点击下面的按钮进入addcontact页面时,它会起作用。因为我已经在我的web应用程序中添加了一个登录名,所以我似乎无法让按钮正常工作。如果我有一个链接,它就可以工作了。有没有办法让按钮正常工作 {% extends "base.html" %} {% block content %} <h1>List of contacts</h1> <ul class=contacts> {% for contacts in contacts %}

当我点击下面的按钮进入addcontact页面时,它会起作用。因为我已经在我的web应用程序中添加了一个登录名,所以我似乎无法让按钮正常工作。如果我有一个链接,它就可以工作了。有没有办法让按钮正常工作

{% extends "base.html" %}

{% block content %}

  <h1>List of contacts</h1>
  <ul class=contacts>
 {% for contacts in contacts %}
   <li><h3><font face="verdana">
     <a href="{{ url_for('contact_detail',contact_id=contacts.id)}}">
     {{ contacts.surname }}, {{ contacts.firstname }}
     </a>
     </font>
   </h3></li>
 {% else %}
   <li><em>No contacts available</em></li>
 {% endfor %}
 </ul>
 <button type="button"><a class="box" href="/addcontact/">Add a new contact</a></button>

 {% endblock %}
{%extends“base.html”%}
{%block content%}
联系人名单
    {contacts%%中的联系人为%s}
  • {%else%}
  • 没有可用的联系人
  • {%endfor%}
{%endblock%}
巧合的是,在我的flask应用程序中添加登录功能后,我也遇到了这种情况,但我没有进一步调查,我认为它们不会有任何关联。 在我将按钮更改为带有submit按钮的表单后,它工作了,其中表单操作是url_for('contact_add'),如下所示:

<form method="get" action="{{url_for('contact_add')}}">
    <input type="submit" value="Add a New Contact">
</form>


我实际上没有尝试运行此功能,因此可能出现语法错误或其他问题。

是否有名为addcontact的视图?你应该用url\u代替/addcontacts来调用它。你的意思是这样吗。是的,我有一个名为@app.route('/addcontact/',methods=['GET','POST'])的视图def def contact_add():不起作用:(.当我点击按钮时,什么都没有发生。这起作用,我确实想到了,尽管这是最好的方法吗?