我定义了这样的蓝图路线:
@mod_patient_directory.route('/delete-patient/<string:doc_id>', methods = ['GET'])
def delete_record(self, doc_id):
mongo.db.patient.remove({'_id': doc_id})
return redirect(url_for('main-page'))
在表格上我称之为:
<form action="{{ url_for('patient_directory.delete_record',doc_id= doc_id )}}" method="post">
<input type="hidden" name="docId" id="docId" value="{{ patient_doc._id }}" />
<input type="hidden" name="action" id="action" value="delete" />
<button type="submit" class="btn btn-default btn-sm">
<span class="glyphicon glyphicon-remove"></span>
</button>
</form>
有人可以告诉我为什么我会收到404错误吗?
答案 0 :(得分:0)
一个问题是您在路线上有methods = ['GET']
,但在表格标签上有method="post"
。您不应将GET
用于删除记录等危险操作,因此您应将接受的methods
更改为['POST']
。
正如@Makoto所指出的那样会给你一个405错误,但你得到404错误,所以一定有另一个问题。您已经发布了如何注册蓝图,但是您的代码在哪里?使用蓝图时要注意的一点是,在注册蓝图之前需要注册所有路线。