Django从模板的多个视图中调用同一视图

Django从模板的多个视图中调用同一视图,django,Django,我有一个调用多个视图的模板。但出于某种原因,人们也在呼唤同样的观点。我想不出来 模板:schedule.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equ

我有一个调用多个视图的模板。但出于某种原因,人们也在呼唤同样的观点。我想不出来

模板:schedule.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <meta http-equiv="X-UA-Compatible" content="ie=edge">
    <title>Schedule Page</title>
</head>
<body>
    <h1>Today's Schedule </h1>

    <b>Scheduled Appointments:</b>
    <div>
        {% for p in schedule %}
            <p> {{p.id}}  {{p.name}} {{p.surname}}  {{p.appointment_time }} </p>
            {% if p.status == "Arrived" %}
                <p>Patient Arrived</p>
                <!-- <button>See Patient</button> -->
                <form action="{% url 'see_patient' p.id %}" method="post">
                    {% csrf_token %}
                    <input type="hidden" name="appid" value="{{ p.id }}">
                    <input type="submit" value="See Patient" class="btn btn-primary">
                </form>
            {% elif p.status == 'In Session' %}
                <p>In Progress</p>
                <form action="{% url 'complete' p.id %}" method="post">
                    {% csrf_token %}
                    <input type="hidden" name="app_id" value="{{ p.id }}">
                    <input type="submit" value="Complete" class="btn btn-primary">
                </form>
            {% elif p.status == 'Complete' %} 
                <p>Completed</p>
            {% else %}
                <p>{{p.status}}</p>
            {% endif %}
        {% endfor %}
    </div>
</br>



</body>
</html>
url.py

url(r'^schedule/$', views.ScheduledAppointments.as_view(), name='schedule'),
    url(r'^schedule/(?P<appid>\d+)/$', views.see_patient, name='see_patient'),
    url(r'^schedule/(?P<app_id>\d+)/$', views.appointment_complete, name='complete'),
url(r'^schedule/$,views.scheduledapoints.as_view(),name='schedule'),
url(r“^schedule/(?P\d+)/$”,views.see_patient,name='see_patient'),
url(r“^schedule/(?P\d+)/$”,views.appointment\u complete,name='complete'),

当我单击“完成”时,POST请求仍然被发送到查看患者视图而不是预约完成。

如果您使用相同的正则表达式注册这两个视图,Django如何知道路由到哪个视图?通常,我会通过在
预约(u complete)
视图的URL中添加
/complete
或其他后缀来区分这些内容。该URL将与列表中第一位且仅与该患者匹配。它不会调用两个viewsUnderstood。谢谢
url(r'^schedule/$', views.ScheduledAppointments.as_view(), name='schedule'),
    url(r'^schedule/(?P<appid>\d+)/$', views.see_patient, name='see_patient'),
    url(r'^schedule/(?P<app_id>\d+)/$', views.appointment_complete, name='complete'),