def create(): f = request.files.get('background_img') img = None if f and f.filename: img_saver = ImageSaver(f) img = img_saver.save() try: description = bleach.clean(request.form.get('description')) if len( bleach.clean(request.form.get('description'))) else 1 / 0 movie = Movie(**params(), poster_id=img.id, description=description) db.session.add(movie) db.session.commit() except: flash('Произошла ошибка, попробуйте снова', 'danger') return redirect(url_for('movies.new')) movie_genre = request.form.getlist('genre_id') if len(movie_genre) <= 0: flash('Произошла ошибка, попробуйте снова', 'danger') return redirect(url_for('movies.new')) for genr in movie_genre: movie_genres = Movie_Genre(movie_id=movie.id, genre_id=genr) db.session.add(movie_genres) db.session.commit() if img: img_saver.bind_to_object(movie) flash(f'Фильм {movie.name} был успешно добавлен!', 'success') return redirect(url_for('movies.show', movie_id=movie.id))
def upload_image(): f = request.files.get('image') if f and f.filename: img_saver = ImageSaver(f) img = img_saver.save() return jsonify({'data': {'filePath': img.url, 'imageId': img.id}}) return jsonify({'error': 'noFileGiven'})
def create(): f = request.files.get('background_img') img = None if f and f.filename: img_saver = ImageSaver(f) img = img_saver.save() course = Course(**params(), background_image_id=img.id) db.session.add(course) db.session.commit() if img: img_saver.bind_to_object(course) flash(f'Курс {course.name} был успешно создан!', 'success') return redirect(url_for('courses.index'))
def new(): f = request.files.get('background_img') img = None if f and f.filename: img_saver = ImageSaver(f) img = img_saver.save() if img == None: flash( f'Ошибка создания фильма! Нельзя добавить один постер к двум фильмам!', 'danger') return redirect(url_for('crud.create')) description = bleach.clean(request.form.get('description')) genres = request.form.getlist('genre_ids') movie = Movie(**params(), description=description) try: movie = Movie(**params(), poster_id=img.id, description=description) if img: img_saver.bind_to_object(movie) except: db.session.rollback() flash(f'Ошибка создания фильма! Извините, внесите данные снова :(', 'danger') return redirect(url_for('crud.create')) try: db.session.add(movie) for genre_id in genres: genre = Genre.query.filter(Genre.id == genre_id).first() movie.genres.append(genre) db.session.commit() except exc.DBAPIError or exc.SQLAlchemyError or exc.DatabaseError: flash(f'Ошибка создания фильма! Извините, внесите данные снова :(', 'danger') return redirect(url_for('crud.create')) flash(f'Фильм {movie.name} был успешно добавлен!', 'success') return redirect(url_for('crud.read', movie_id=movie.id))