def add_book(): form = BookForm() if form.validate_on_submit(): db_sess = db_session.create_session() book = Book() book.title = form.title.data book.author = form.author.data genre = db_sess.query(Genre).filter(Genre.title == form.genre.data).first() if not genre: new_genre = Genre(title=form.genre.data) db_sess.add(new_genre) db_sess.commit() genre = db_sess.query(Genre).filter(Genre.title == form.genre.data).first() book.genre = genre book.created_date = form.created_date.data book.annotation = form.annotation.data book.img_file = form.img_file.data.filename print(form.img_file.data) print(type(form.img_file.data)) form.img_file.data.save(f'static/img/{form.img_file.data.filename}') book.text_file = form.text_file.data.filename form.text_file.data.save(f'static/text/{form.text_file.data.filename}') genre.book.append(book) db_sess.merge(genre) db_sess.commit() return redirect('/') return render_template('book.html', title='Добавление книги', form=form)
def add_book(): if not current_user.is_authenticated: return redirect('/library/login') # не работает if not current_user.admin: access_error('Добавление книги') form = BooksForm() if form.validate_on_submit(): db_sess = db_session.create_session() book = Book() book.title = form.title.data book.author = form.author.data book.year = form.year.data book.genre = form.genre.data book.description = form.description.data book.text = form.text.data db_sess.add(book) db_sess.merge(current_user) db_sess.commit() return redirect('/library') return render_template('add_book_page.html', title='Добавление книги', ddescription='YLibrary', form=form)
def add_job(): try: if not current_user.is_authenticated: return redirect('/library/login') if not current_user.admin: return AccessError form = BooksForm() if form.validate_on_submit(): db_sess = create_session() book = Book() book.title = form.title.data book.author = form.author.data book.year = form.year.data book.genre = form.genre.data book.description = form.description.data db_sess.add(book) db_sess.merge(current_user) db_sess.commit() return redirect('/library') except AccessError: return # ругается на отсутствие прав доступа return render_template('books.html', title='Добавление книги', form=form)