changes
This commit is contained in:
43
plugins/plant/routes.py
Normal file
43
plugins/plant/routes.py
Normal file
@ -0,0 +1,43 @@
|
||||
from flask import Blueprint, render_template, redirect, url_for, request, flash
|
||||
from app import db
|
||||
from .models import Plant
|
||||
from .forms import PlantForm
|
||||
|
||||
bp = Blueprint('plant', __name__, template_folder='templates')
|
||||
|
||||
@bp.route('/plants')
|
||||
def index():
|
||||
plants = Plant.query.order_by(Plant.created_at.desc()).all()
|
||||
return render_template('plant/index.html', plants=plants)
|
||||
|
||||
@bp.route('/plants/<int:plant_id>')
|
||||
def detail(plant_id):
|
||||
plant = Plant.query.get_or_404(plant_id)
|
||||
return render_template('plant/detail.html', plant=plant)
|
||||
|
||||
@bp.route('/plants/new', methods=['GET', 'POST'])
|
||||
def create():
|
||||
form = PlantForm()
|
||||
if form.validate_on_submit():
|
||||
plant = Plant(
|
||||
name=form.name.data,
|
||||
type=form.type.data,
|
||||
notes=form.notes.data,
|
||||
is_active=form.is_active.data
|
||||
)
|
||||
db.session.add(plant)
|
||||
db.session.commit()
|
||||
flash('Plant created successfully.', 'success')
|
||||
return redirect(url_for('plant.index'))
|
||||
return render_template('plant/form.html', form=form)
|
||||
|
||||
@bp.route('/plants/<int:plant_id>/edit', methods=['GET', 'POST'])
|
||||
def edit(plant_id):
|
||||
plant = Plant.query.get_or_404(plant_id)
|
||||
form = PlantForm(obj=plant)
|
||||
if form.validate_on_submit():
|
||||
form.populate_obj(plant)
|
||||
db.session.commit()
|
||||
flash('Plant updated successfully.', 'success')
|
||||
return redirect(url_for('plant.detail', plant_id=plant.id))
|
||||
return render_template('plant/form.html', form=form, plant=plant)
|
Reference in New Issue
Block a user