def pet_details(pet_id): """takes us to our pet detail page and handles edit if info is edited!""" current_pet = Pet.query.get_or_404(pet_id) form = EditPetForm() if form.validate_on_submit(): photo_url = form.photo_url.data or None age = form.age.data notes = form.notes.data or None available = form.available.data if photo_url is not None: current_pet.photo_url = photo_url current_pet.age = age current_pet.notes = notes current_pet.available = available db.session.commit() else: return render_template('pet-details.html', pet=current_pet, form=form) return redirect("/")
def display_edit_pet(pet_id): """Route that displays pet's information, shows a form to edit the pet, and edits the pet""" pet = Pet.query.get_or_404(pet_id) form = EditPetForm(obj=pet) if form.validate_on_submit(): pic = form.photo_url.data # This line doesn't work here for some reason. Still trying to figure this out. Even though pic gets set to None if # the photo_url is an empty string, it still doesn't get set to the default_img value. I have to set it manually below # in the else: block # pic = pic if pic else None if pic: pet.photo_url = pic else: pet.photo_url = default_img pet.name = form.name.data pet.age = form.age.data pet.notes = form.notes.data pet.available = form.available.data db.session.commit() flash(f"Successfully edited {pet.name}!") return redirect(f'/{pet.id}') else: return render_template('display-edit.html', form=form, pet=pet)
def show_pet(pet_id): """ Edit pet form; handle editing pets """ pet = Pet.query.get_or_404(pet_id) form = EditPetForm(obj=pet) if form.validate_on_submit(): notes = form.notes.data photo_url = form.photo_url.data available = form.available.data pet.notes = notes pet.photo_url = photo_url pet.available = available db.session.commit() flash( f"notes: {notes}, photo_url={photo_url}, available={pet.available}" ) return redirect(f'/{pet_id}') p = dict(name=pet.name, species=pet.species, photo_url=pet.photo_url, age=pet.age, notes=pet.notes, available=pet.available) return render_template('pet_edit_form.html', pet=p, form=form)
def pet_info(id): """ Pet info and edit form; validates and handle editing of pet into pets table Also handles GET of pet info / edit form """ pet = Pet.query.get_or_404(id) form = EditPetForm(obj=pet) if form.validate_on_submit(): photo_url = form.photo_url.data photo_url = photo_url if photo_url else DEFAULT_PIC notes = form.notes.data available = form.available.data # TO NOT CHANGE PICTURE WHEN EMPTY STRING!!! # if photo_url is not None: # pet.photo_url = photo_url pet.photo_url = photo_url pet.notes = notes pet.available = available db.session.commit() flash(f"Edited {pet.name}!") return redirect(f"/{id}") else: return render_template( "pet_info.html", pet=pet, form=form)
def show_pet_detail(pet_id): """show pet detail""" pet = Pet.query.get(pet_id) form = EditPetForm(obj=pet) pet_name = pet.name pet_species = pet.species pet_age = pet.age if form.validate_on_submit(): pet.photo_url = form.photo_url.data pet.notes = form.notes.data pet.available = form.available.data db.session.commit() return redirect(f'/pet/{pet_id}') else: return render_template( "pet_detail.html", pet_name=pet_name, pet_image=pet.photo_url, pet_species=pet_species, pet_age=pet_age, form=form )
def show_pet(petid): """Shows details about the specified pet and allows editing those details""" pet = Pet.query.get_or_404(petid) form = EditPetForm(obj=pet) if form.validate_on_submit(): if request.form['btn'] == 'Edit Info': pet.name = form.name.data.capitalize() pet.species = form.species.data.capitalize() pet.available = form.available.data pet.photo_url = form.photo_url.data pet.age = form.age.data pet.notes = form.notes.data db.session.commit() flash(f"{pet.name} data edited!") return redirect(f"/{petid}") elif request.form['btn'] == 'Delete': db.session.delete(pet) db.session.commit() flash(f"{pet.name} deleted") return redirect('/') else: flash(f"Weird submit was detected") return redirect('/') else: return render_template('pet.html', pet=pet, form=form)
def show_pet_details(pet_id): """Shows pet details and edit form page""" pet = Pet.query.get_or_404(pet_id) form = EditPetForm(obj=pet) if form.validate_on_submit(): if form.photo_upload.data: f = form.photo_upload.data filename = secure_filename(f.filename) f.save(os.path.join(app.config['UPLOAD_FOLDER'], filename)) pet.photo = url_for('static', filename=filename) elif form.photo_url.data: pet.photo = form.photo_url.data pet.notes = form.notes.data pet.available = form.available.data db.session.commit() flash(f"{pet.name} updated!") return redirect(f"/{pet.id}") else: return render_template("pet_details.html", pet=pet, form=form)
def edit(pet_id): pet = Pet.query.get(pet_id) form = EditPetForm() if form.validate_on_submit(): pet.photo_url = form.photo_url.data pet.notes = form.notes.data pet.available = form.available.data db.session.commit() return redirect("/") else: return render_template("editPet.html", form=form, pet=pet)
def edit_pet(id): """Renders and handles the edit pet form""" pet = Pet.query.get_or_404(id) form = EditPetForm(obj=pet) if form.validate_on_submit(): form.populate_obj(pet) db.session.add(pet) db.session.commit() return redirect('/') else: return render_template("edit_pet.html", pet=pet, form=form)
def pet_page(pet_id): """Renders pet page (GET) or handles edit pet form submission (POST)""" pet = Pet.query.get(pet_id) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet.photo_url = form.photo_url.data pet.notes = form.notes.data pet.is_available = form.is_available.data db.session.commit() return redirect(f'/{pet_id}') else: return render_template('pet-info.html', pet=pet, form=form)
def show_and_edit_pet(pet_id): pet = Pet.query.get_or_404(pet_id) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet.photo_url = form.photo_url.data pet.notes = form.notes.data pet.available = form.available.data db.session.commit() return redirect('/') return render_template('edit-pet-form.html', form=form, pet=pet)
def show_pet_details(pet_id): pet = Pet.query.get_or_404(pet_id) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet.photo_url = form.photo_url.data pet.notes = form.notes.data pet.available = form.available.data sess.add(pet) sess.commit() return redirect('/') else: return render_template("displayPet.html", pet=pet, form=form)
def edit_pet_detail(id): pet = Pet.query.get_or_404(id) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet.notes = form.notes.data pet.available = form.available.data pet.photo_url = form.photo_url.data db.session.commit() flash('updated') return redirect('/') else: return render_template('pet_edit.html', pet=pet, form=form)
def display(pet_id): """ Displays pet details and edit form """ pet = Pet.query.get_or_404(pet_id) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet.photo_url = form.photo_url.data pet.notes = form.notes.data pet.available = form.available.data db.session.commit() return redirect(f'/{pet_id}') else: return render_template('details.html', pet=pet, form=form)
def edit_pet(pet_id): '''edit an existing pet''' pet = Pet.query.get_or_404(pet_id) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet.notes = form.notes.data pet.available = form.available.data pet.photo_url = form.photo_url.data db.session.commit() flash(f'{pet.name} has been updated!') return redirect(url_for('all_pets')) else: return render_template("edit_pet.html", form=form, pet=pet)
def show_pet(id): pet = Pet.query.get(id) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet.name = form.name.data pet.species = form.species.data pet.photo_url = form.photo_url.data pet.age = form.age.data pet.notes = form.notes.data pet.available = form.available.data db.session.commit() return redirect(f"/pet/{id}") return render_template("pet.html", form=form, pet=pet)
def show_pet_details(pet_id): """ Shows pet details and form to edit pet """ form = EditPetForm() pet = Pet.query.get_or_404(pet_id) if form.validate_on_submit(): pet.photo_url = form.photo_url.data pet.notes = form.notes.data pet.available = form.available.data flash(f"Updated {pet.name}!") return redirect(f"/{pet.id}") else: return render_template("pet_info.html", pet=pet, form=form)
def edit_pet(id): """edit pet info for a specific pet""" pet = Pet.query.get_or_404(id) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet.notes = form.notes.data pet.photo_url = form.photo_url.data pet.available = form.available.data db.session.commit() flash(f"{pet.name} is updated.") return redirect(url_for('list_pets')) else: return render_template("edit_pet_form.html", form=form, pet=pet)
def edit_pet(id): """Displays an edit pet form, populated by pet with an id of id, or returns 404 on a get request. A post request updates the database information and redirects the user to details via get request""" pet = Pet.query.get_or_404(id) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet.image_url = form.image_url.data pet.available = form.available.data pet.notes = form.notes.data db.session.add(pet) db.session.commit() return redirect(f'/{id}') else: return render_template('edit_pet.html', form = form, pet = pet)
def edit_pet(pet_id): pet = AdoptPet.query.get_or_404(pet_id) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet.photo_url = form.photo_url.data pet.notes = form.notes.data pet.available = form.available.data db.session.commit() flash(f"{pet.name} updated.",'success') return redirect(url_for('list_page')) else: return render_template('edit.html', form=form, pet=pet)
def display_pet_details_and_edit_form(pet_id): """ Shows pet details and edit pet form """ pet = Pet.query.get_or_404(pet_id) form = EditPetForm(obj=pet) if form.validate_on_submit(): print("*!*!*!*!*! IT WORKED !*!!" * 10) pet.photo_url = form.photo_url.data pet.notes = form.notes.data pet.available = form.available.data db.session.commit() flash(f"Edited pet: {pet.name}") return redirect(f"/{pet_id}") else: return render_template("edit_pet.html", form=form, pet=pet)
def show_pet_info_or_edit(pet_id): """Show pet details.""" pet = Pet.query.get_or_404(pet_id) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet.photo_url = form.photo_url.data pet.notes = form.notes.data pet.available = form.available.data db.session.commit() return redirect(f"/pet/{pet_id}") return render_template("pet_detail.html", form=form, pet=pet)
def show_pet_details(pet_id): """Shows details about a specific pet along with a form to edit some of their info""" pet = Pet.query.get_or_404(pet_id) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet.photo_url = form.photo_url.data pet.notes = form.notes.data pet.available = form.available.data db.session.commit() flash("Info updated successfully!") return redirect(f"/{pet.id}") #error in form input: re-present form for editing return render_template("pet_details.html", pet=pet, form=form)
def show_pet_details(pet_id): """ render pet page""" pet = Pet.query.get_or_404(pet_id) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet.photo_url = form.photo_url.data or None pet.notes = form.notes.data pet.available = form.available.data db.session.commit() return redirect("/") return render_template("pet_detail.html", pet=pet, form=form)
def details(pet_id): pet = Pet.query.get(pet_id) if pet == None: abort(404) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet.photo_url = form.photo_url.data pet.notes = form.notes.data pet.available = form.available.data db.session.commit() flash(f"{pet.name} details have been updated.") return render_template("details.html", pet=pet, form=form)
def pet_details(pet_id): """see or edit pet details""" pet = Pet.query.get(pet_id) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet = Pet.query.get(pet_id) pet.photo_url = form.photo_url.data pet.notes = form.notes.data pet.available = form.available.data db.session.add(pet) db.session.commit() return redirect('/') else: return render_template('pet_details.html', pet=pet, form=form)
def show_pet(pet_id_number): """Shows a pet and it's edit form""" pet = Pet.query.get_or_404(pet_id_number) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet.photo_url = form.photo_url.data pet.notes = form.notes.data pet.available = form.available.data db.session.commit() return redirect(f'/{pet_id_number}') else: return render_template("pet_display.html", pet=pet, form=form)
def pet_info_edit(id): """show pet information and edit pet form""" pet = Pet.query.get_or_404(id) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet.photo_url = form.photo_url.data pet.notes = form.note.data pet.available = form.available.data db.session.commit() flash(f"{pet.name} updated!") return redirect(f"/{pet.id}") else: return render_template("petdetails.html", pet=pet, form=form)
def edit_pet(pet_id): """Edit Pet Details""" pet = Pet.query.get_or_404(pet_id) form = EditPetForm(obj=pet) if form.validate_on_submit(): pet.photo_url = form.photo_url.data pet.notes = form.notes.data pet.available = form.available.data db.session.commit() return redirect('/') else: return render_template('edit_pet_form.html', pet=pet, form=form)
def edit_add_pet_form(pet_id): form = EditPetForm() pet = Pet.query.get_or_404(pet_id) if form.validate_on_submit(): pet.notes = form.notes.data pet.available = form.available.data pet.photo_url = form.photo_url.data db.session.commit() flash(f"{pet.name} has been updated!") return redirect('/') else: return render_template('edit_pet_form.html', form=form, pet=pet)