def test_renew_form_year_field_initial(self): user = User.objects.create(id=4, full_name='Иванов Иван', middle_name='Иванович', birth_day=datetime.date( 1997, 5, 2), phone='+375(29)508-80-02') book = Book.objects.create( id=4, reader=user, book_name='Чистый код', author_full_name='Роберт Мартин', year=2020) form = EditBookForm(book) self.assertTrue(form.fields['year'].initial == 2020)
def edit_book(book_id): book = db.session.query(Book).filter_by(id=book_id).one() form = EditBookForm(book) if form.validate_on_submit(): if book.user.id == g.user.id: book.book_title = form.book_title.data db.session.add(book) db.session.commit() flash("Book edited!") return redirect(url_for('edit_book', book_id=book_id, form=form)) else: flash('You are not authorized to edit this book','error') return redirect(url_for('edit_book', book_id=book_id)) else: form.book_title.data = book.book_title authors = book.authors add_author_form = AddAuthorToBookForm() return render_template('book_edit.html', book=book, form=form, authors=authors, add_author_form=add_author_form)
def edit_book(ISBN): # Handle form PUT request book = Book.query.get(ISBN) form = EditBookForm(obj=book) if form.validate_on_submit(): authors = [author.strip() for author in form.data['authors'].split(',')] keywords = [keyword.strip() for keyword in form.data['keywords'].split(',')] form.populate_obj(book) book.authors = authors book.keywords = keywords if save(book): flash('Book details updated successfully!') else: flash('Failed to update book details. Please try again.') return render_template('store_manager/book/edit.html', form=form, book=book)
def edit_book_view(request, book_id): book = Book.objects.get(id=book_id) form = EditBookForm(book, request.POST or None) if form.is_valid(): book_name = form.cleaned_data['book_name'] author_full_name = form.cleaned_data['author_full_name'] year = form.cleaned_data['year'] cost = form.cleaned_data['cost'] pages = form.cleaned_data['pages'] book.book_name = book_name book.author_full_name = author_full_name book.year = year book.cost = cost book.pages = pages book.save() return HttpResponseRedirect('/book/'+str(book.reader.id)+'/') context = { 'book': book, 'form': form } return render(request, 'edit_book.html', context)
def edit_book(book_id): form=EditBookForm() book=Book.query.get(book_id) if request.method=='POST': book.title=form.title.data book.author=form.author.data db.session.commit() flash('Your changes have been saved!', 'info') return redirect(url_for('books')) elif request.method=='GET': form.title.data=book.title form.author.data=book.author return render_template('edit_book.html', form=form)
def editBook(bookID): form = EditBookForm() current_book = Book.query.get(bookID) # If the form is valid it changes the book data and commits if form.validate_on_submit(): current_book.title = form.title.data current_book.author = form.author.data current_book.genre = form.genre.data current_book.format = form.format.data db.session.commit() flash('Changes have been saved') return redirect(url_for('index')) # This fills the form with the book's data elif request.method == 'GET': form.title.data = current_book.title form.author.data = current_book.author form.genre.data = current_book.genre form.format.data = current_book.format return render_template('editBook.html', title='Edit', form=form, current_book=current_book)