ich arbeite aktuell an einer Flask-App und brauche in verschiedenen Routen die ähnlichen Funktionen, wie löschen, bearbeiten etc..
Wie vermeide ich solche Dopplungen? Da man ja sagt, code best practice ist es so etwas zu vermeiden.
Beispiel:
Code: Alles auswählen
@app.route("/customers", methods=['GET', 'POST'])
@login_required
def customers():
if request.method == 'POST':
if not request.form['name'] or not request.form['email'] or not request.form['bank_account']:
flash('Alle Felder beachten.', 'error')
else:
customer = Customers(name = request.form['name'], address = request.form['address'], email = request.form['email'], phone = request.form['phone'],
bank_account = request.form['bank_account'])
db.session.add(customer)
db.session.commit()
flash('Kunde erfolgreich hinzugefügt.')
return redirect(url_for('home'))
return render_template("HTML/customers.html", title='Customers')
Code: Alles auswählen
@app.route("/employees", methods=['GET', 'POST'])
@login_required
def employees():
if request.method == 'POST':
if not request.form['name'] or not request.form['email']:
flash('Alle Felder beachten.', 'error')
else:
employee = Employees(name = request.form['name'], address = request.form['address'], email = request.form['email'], phone = request.form['phone'],
group = request.form['group'])
db.session.add(employee)
db.session.commit()
flash('Mitarbeiter erfolgreich hinzugefügt.')
return redirect(url_for('home'))
if request.method == 'GET':
employees = Employees.query.all()
return render_template("HTML/employees.html", title='Employees', data=employees)
Gibt es da eine Möglichketi dies "schöner" zu machen?
Grüße
Karlirex