使用flask_sqlalchemy
在插入数据发生错误的时候应该如何处理?
相关模型如下:
class Supplier(db.Model):
ID = db.Column(db.Integer, primary_key=True)
Name = db.Column(db.String(250), unique=True, nullable=False)
视图中的操作如下:
@supplier.route('/purchase/supplier/add', methods=['GET', 'POST'])
def add_supplier():
form = SupplierForm(request.form)
if request.method == 'POST' and form.validate():
supplier = Supplier(form.supplier_name.data)
db.session.add(supplier)
db.session.commit()
return redirect(url_for('supplier.list_supplier'))
当我插入两个相同的supplier_name
时,就会出现这样的错误:sqlalchemy.exc.IntegrityError
,当我返回,尝试重新输入时,出现了这样的错误:sqlalchemy.exc.InvalidRequestError
。
我期望的结果是可以有一个办法知道这个数据不符合要求并提示用户修改输入,请问应该如何处理?
谢谢~