def updateauthor(): form = AuthorForm(request.form) author = Author.query.get_or_404(form.id.data) if request.method == 'POST': form.populate_obj(author) db.session.commit() return redirect(url_for('authors')) return render_template('error.html', form=form)
def add_authors(): form = AuthorForm() if form.validate_on_submit(): Author.save(name=form.name.data) return redirect(url_for('authors')) return render_template('form.html', title="Добавление нового автора", form=form, url=url_for('add_authors'))
def addauthor(): form = AuthorForm(request.form) if request.method == 'POST' and form.validate(): user = Author(form.name.data, form.lastname.data, form.born.data) db.session.add(user) db.session.commit() return redirect(url_for('authors')) return render_template('addauthor.html', form=form)
def post(self): """ Adding new author :return: Response """ form = AuthorForm() if form.validate_on_submit(): author = Author(escape(form.data["name"])) db.session.add(author) db.session.commit()
def createauthor(): form = AuthorForm() if form.validate_on_submit(): auth = Author(author=form.author.data) db.session.add(auth) db.session.commit() flash('Added author {}'.format( form.author.data)) return redirect(url_for('index')) return render_template('createauthor.html', title='Create author', form=form)
def create_user(): form = AuthorForm() if form.validate_on_submit(): name = request.form.get('name') lastname = request.form.get('lastname') email = request.form.get('email') password = request.form.get('password') user = Author( name=name, lastname=lastname, email=email, password=bcrypt.generate_password_hash(password).decode('utf-8')) db.session.add(user) db.session.commit() return redirect("/") return render_template('create_user.html', form=form)
def author_details(author_id): a = Author.query.filter_by(name=author_id).first() if a is None: return "Author unknown!" author_dict = {'name': a.name, 'desc': a.desc} form = AuthorForm(data=author_dict) if request.method == "POST": if form.validate_on_submit(): a.name, a.desc = tuple(form.data.values())[:2] db.session.add(a) db.session.commit() return redirect(url_for("items_list")) return render_template("author.html", form=form, author_name=author_id)
def change_author(author_id): form = AuthorForm() author = Author.query.get(author_id) if request.method == "POST": if form.validate_on_submit(): author.name = form.name.data db.session.add(author) db.session.commit() return redirect(url_for('authors')) else: form.name.data = author.name return render_template('form.html', title="Изменение данных об авторе", form=form, url=url_for('change_author', author_id=author.id))
def put(self, author_id): """ Update author's info :param author_id: author's id for getting from DB :return: Response """ form = AuthorForm() if form.validate_on_submit(): author = Author.query.get(author_id) author.name = escape(form.data['name']) # escape() is overkill here books = [Book.query.filter_by(title=escape(submitted_book_title)).first() for submitted_book_title in request.json["books"] ] # remove all nonexistent objects (they are not in DB) books = list(filter(None, books)) author.books = books db.session.commit()
def put(self, author_id): """ Update author's info :param author_id: author's id for getting from DB :return: Response """ form = AuthorForm() if form.validate_on_submit(): author = Author.query.get(author_id) author.name = escape(form.data['name']) # escape() is overkill here books = [ Book.query.filter_by( title=escape(submitted_book_title)).first() for submitted_book_title in request.json["books"] ] # remove all nonexistent objects (they are not in DB) books = list(filter(None, books)) author.books = books db.session.commit()
def change_user_data(name): user = Author.query.get(name) form = AuthorForm() method = request.form.get('_method') if method == 'PATCH': lastname = request.form.get('lastname') email = request.form.get('email') user.lastname = lastname user.email = email db.session.add(user) db.session.commit() return redirect('/admin') return render_template('change_user_data.html', user=user, form=form)
def author(id): author = Author.query.get(id) form = AuthorForm(request.form, obj=author) return render_template('author.html', author=author, form=form)