use url_for not hardcoded routes

This commit is contained in:
2021-09-24 12:47:47 +10:00
parent 4179806017
commit eab8983f40

View File

@@ -115,7 +115,7 @@ def new_person():
db.session.add(person) db.session.add(person)
db.session.commit() db.session.commit()
st.SetMessage( "Created new Person ({})".format(person.tag) ) st.SetMessage( "Created new Person ({})".format(person.tag) )
return redirect( f'/person/{person.id}' ) return redirect( url_for( 'person', id=person.id) )
except SQLAlchemyError as e: except SQLAlchemyError as e:
st.SetMessage( f"<b>Failed to add Person:</b>&nbsp;{e.orig}", "danger" ) st.SetMessage( f"<b>Failed to add Person:</b>&nbsp;{e.orig}", "danger" )
return render_template("person.html", person=person, form=form, page_title = page_title) return render_template("person.html", person=person, form=form, page_title = page_title)
@@ -139,7 +139,7 @@ def person(id):
db.session.execute( f"delete from person_refimg_link where person_id = {id}" ) db.session.execute( f"delete from person_refimg_link where person_id = {id}" )
Person.query.filter(Person.id==id).delete() Person.query.filter(Person.id==id).delete()
db.session.commit() db.session.commit()
return redirect( f'/persons' ) return redirect( url_for( 'persons' ) )
elif request.form and form.validate(): elif request.form and form.validate():
new_refs=[] new_refs=[]
for ref_img in person.refimg: for ref_img in person.refimg:
@@ -158,7 +158,7 @@ def person(id):
st.AppendMessage(" To: ({}, {}, {})".format(person.tag, person.firstname, person.surname) ) st.AppendMessage(" To: ({}, {}, {})".format(person.tag, person.firstname, person.surname) )
db.session.add(person) db.session.add(person)
db.session.commit() db.session.commit()
return redirect( f'/person/{person.id}' ) return redirect( url_for( 'person', id=person.id) )
except SQLAlchemyError as e: except SQLAlchemyError as e:
st.SetMessage( f"<b>Failed to modify Person:</b>&nbsp;{e}", "danger" ) st.SetMessage( f"<b>Failed to modify Person:</b>&nbsp;{e}", "danger" )
return render_template("person.html", form=form, page_title=page_title) return render_template("person.html", form=form, page_title=page_title)