RF03 - Editar Animal

parents
from flask import Flask, render_template, request, redirect
from models import db, Animal
app = Flask(__name__)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///animais.db'
db.init_app(app)
with app.app_context():
db.create_all()
# LISTAR (página inicial)
@app.route('/')
def index():
animais = Animal.query.all()
return render_template('index.html', animais=animais)
# EDITAR (Nicoly)
@app.route('/editar/<int:id>', methods=['GET', 'POST'])
def editar(id):
animal = Animal.query.get(id)
if request.method == 'POST':
animal.nome = request.form['nome']
animal.especie = request.form['especie']
animal.idade = int(request.form['idade'])
animal.peso = float(request.form['peso'])
db.session.commit()
return redirect('/')
return render_template('editar.html', animal=animal)
if __name__ == '__main__':
app.run(debug=True)
\ No newline at end of file
from flask_sqlalchemy import SQLAlchemy
db = SQLAlchemy()
class Animal(db.Model):
id = db.Column(db.Integer, primary_key=True)
nome = db.Column(db.String(100))
especie = db.Column(db.String(100))
idade = db.Column(db.Integer)
peso = db.Column(db.Float)
\ No newline at end of file
<h2>Editar Animal</h2>
<form method="POST">
Nome: <input type="text" name="nome" value="{{ animal.nome }}"><br>
Espécie: <input type="text" name="especie" value="{{ animal.especie }}"><br>
Idade: <input type="number" name="idade" value="{{ animal.idade }}"><br>
Peso: <input type="number" step="0.1" name="peso" value="{{ animal.peso }}"><br>
<button type="submit">Salvar</button>
</form>
\ No newline at end of file
<a href="/editar/{{ animal.id }}">Editar</a>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment