def music_add(): form = MusicForm() set_music_choices(form) if form.validate_on_submit(): music = Music() set_music_attribs(form, music, True) cover_fs = request.files.get(form.music_cover.name) audio_fs = request.files.get(form.music_audio.name) lrc_fs = request.files.get(form.music_lrc.name) subfolder = 'musics' + '/' + music.uuid music.coverfile = musicCoversSet.save(cover_fs, folder=subfolder, name=cover_fs.filename) music.audiofile = musicAudiosSet.save(audio_fs, folder=subfolder, name=audio_fs.filename) music.lrcfile = musicLrcsSet.save(lrc_fs, folder=subfolder, name=lrc_fs.filename) db.session.add(music) # 记录操作日志 operateLog = AdminOperatelog(admin_id=session.get("admin_id"), ip=request.remote_addr, operations='添加一条音乐') db.session.add(operateLog) db.session.commit() flash(message='音乐添加成功!', category='ok') return redirect(url_for('admin.music_list', page=1)) return render_template('admin/music_add.html', form=form)
def music_change(id): form = MusicForm() set_music_choices(form) form.music_cover.validators = [form.music_cover.validators[1]] form.music_audio.validators = [form.music_audio.validators[1]] form.music_lrc.validators = [form.music_lrc.validators[1]] music = Music.query.get_or_404(id) if request.method == "GET": form.music_title.data = music.title form.music_singer.data = music.singer form.music_singer.data = music.singer form.music_privacy.data = music.privacy form.music_recmmed.data = music.recommed form.music_lang.data = music.lang_id form.music_style.data = music.style_id form.music_theme.data = music.theme_id form.music_emotion.data = music.emotion_id form.music_scene.data = music.scene_id if form.validate_on_submit(): set_music_attribs(form, music, False) subfolder = 'musics' + '/' + music.uuid cover_fs = form.music_cover.data if cover_fs: cover_path = musicCoversSet.path(filename=music.coverfile) if os.path.isfile(cover_path): os.remove(cover_path) music.coverfile = musicCoversSet.save(cover_fs, folder=subfolder, name=cover_fs.filename) audio_fs = form.music_audio.data if audio_fs: audio_path = musicAudiosSet.path(filename=music.audiofile) if os.path.isfile(audio_path): os.remove(audio_path) music.audiofile = musicAudiosSet.save(audio_fs, folder=subfolder, name=audio_fs.filename) lrc_fs = form.music_lrc.data if lrc_fs: lrc_path = musicLrcsSet.path(filename=music.lrcfile) if os.path.isfile(lrc_path): os.remove(lrc_path) music.lrcfile = musicLrcsSet.save(lrc_fs, folder=subfolder, name=lrc_fs.filename) db.session.add(music) db.session.commit() flash(message='音乐修改成功!', category='ok') return redirect(url_for('admin.music_list', page=1)) return render_template('admin/music_change.html', music=music, form=form)