Example #1
0
def movie_add():
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        # 获取上传的数据
        file_url = secure_filename(form.url.data.filename)
        file_logo = secure_filename(form.logo.data.filename)
        # 查看一下路径是否存在,如果不存在,则创建路劲
        if not os.path.exists(app.config["UP_DIR"]):
            os.makedirs(app.config["UP_DIR"])
            # 对这个目录进行授权
            os.chmod(app.config["UP_DIR"], "rw")
        url = change_filename(file_url)
        logo = change_filename(file_logo)
        # 保存
        form.url.data.save(app.config["UP_DIR"] + url)
        form.logo.data.save(app.config["UP_DIR"] + logo)
        movie = Movie(
            title=data["title"],
            url=url,
            info=data["info"],
            logo=logo,
            star=int(data['star']),
            playnum=0,
            commentnum=0,
            tag_id=int(data['tag_id']),
            area=data['area'],
            releasse_time=data["releasse_time"],
            length=data['length']
        )
        db.session.add(movie)
        db.session.commit()
        flash("添加成功", 'ok')
        return redirect(url_for('admin.movie_add'))
    return render_template('admin/movie_add.html', form=form)
Example #2
0
def movie_edit(id=None):
    """
    电影列表页面
    """
    form = MovieForm()
    form.url.validators = []
    form.logo.validators = []

    movie = Movie.query.get_or_404(int(id))
    # 赋初值
    if request.method == "GET":
        form.info.data = movie.info
        form.tag_id.data = movie.tag_id
        form.star.data = movie.star

    if form.validate_on_submit():
        data = form.data
        # 判断片名是否存在
        movie_count = Movie.query.filter_by(title=data['title']).count()

        if movie_count == 1 and movie.title != data['title']:
            flash('片名已经存在!', category='err')
            return redirect(url_for('admin.movie_edit', id=id))

        # 上传视频文件以及logo图片文件
        if not os.path.exists(app.config['UP_DIR']):
            os.makedirs(app.config['UP_DIR'])
            os.chmod(app.config['UP_DIR'], 'rw')

        # 视频文件上传
        if form.url.data.filename != None:
            # 先要删除原文件,再上传修改后的新文件
            old_movie_file = app.config['UP_DIR'] + movie.url
            if os.path.exists(old_movie_file):
                os.remove(old_movie_file)
            file_url = secure_filename(form.url.data.filename)
            movie.url = change_filename(file_url)
            form.url.data.save(app.config["UP_DIR"] + movie.url)

        # LOGO文件上传
        if form.logo.data.filename != None:
            logo_file = app.config['UP_DIR'] + movie.logo
            if os.path.exists(logo_file):
                os.remove(logo_file)
            file_logo = secure_filename(form.logo.data.filename)
            movie.logo = change_filename(file_logo)
            form.logo.data.save(app.config["UP_DIR"] + movie.logo)

        movie.star = data['star']
        movie.tag_id = data['tag_id']
        movie.info = data['info']
        movie.title = data['title']
        movie.area = data['area']
        movie.length = data['length']
        movie.release_time = data['release_time']
        db.session.add(movie)
        db.session.commit()
        flash("电影修改成功!", category="ok")
        return redirect(url_for('admin.movie_edit', id=id))
    return render_template("admin/movie_edit.html", form=form, movie=movie)
Example #3
0
def movie_add():
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        # 以下全都是为了设置文件的保存路径做的工作
        file_url = secure_filename(form.url.data.filename)
        file_logo = secure_filename(form.logo.data.filename)
        if not os.path.exists(app.config['UP_DIR']):
            os.makedirs(app.config['UP_DIR'])
        os.chmod(app.config['UP_DIR'],
                 stat.S_IRWXU | stat.S_IRGRP | stat.S_IROTH)
        url = change_filename(file_url)
        logo = change_filename(file_logo)
        # 设置路径以及文件名称完毕
        form.url.data.save(os.path.join(app.config['UP_DIR'], url))
        form.logo.data.save(os.path.join(app.config['UP_DIR'], logo))
        movie = Movie(
            title=data['title'],
            url=url,
            info=data['info'],
            logo=logo,
            star=int(data['star']),
            play_num=0,
            comment_num=0,
            tag_id=int(data['tag_id']),
            area=data['area'],
            release_time=data['release_time'],
            length=data['length'],
        )
        db.session.add(movie)
        db.session.commit()
        flash('添加电影成功!', 'ok')
        return redirect(url_for('admin.movie_add'))
    return render_template('admin/movie_add.html', form=form)
Example #4
0
def movie_add():
    form = MovieForm()
    # 实时拉取出标签
    form.tag_id.choices = [(v.id, v.name) for v in Tag.query.all()]
    if form.validate_on_submit():
        data = form.data
        file_url = secure_filename(form.url.data.filename)
        file_cover = secure_filename(form.cover.data.filename)
        if not os.path.exists(app.config["UP_DIR"]):
            os.makedirs(app.config["UP_DIR"])
            os.chmod(app.config["UP_DIR"], "rw")
        url = change_filename(file_url)
        cover = change_filename(file_cover)
        form.url.data.save(app.config["UP_DIR"] + url)
        form.cover.data.save(app.config["UP_DIR"] + cover)
        movie = Movie(name=data["name"],
                      url=url,
                      intro=data["intro"],
                      cover=cover,
                      star=int(data["star"]),
                      playnum=0,
                      commentnum=0,
                      tag_id=int(data["tag_id"]),
                      area=data["area"],
                      release_time=data["release_time"],
                      mins=data["mins"])
        db.session.add(movie)
        db.session.commit()
        flash("添加电影成功!", "ok")
        return redirect(url_for('admin.movie_add'))
    return render_template("admin/movie_add.html", form=form)
Example #5
0
def movie_add():
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        file_url = secure_filename(form.url.data.filename)
        file_logo = secure_filename(form.logo.data.filename)
        if not os.path.exists(app.config['UP_DIR']):
            os.makedirs(app.config['UP_DIR'])
            os.chmod(app.config['UP_DIR'], 'rw')
        url = change_filename(file_url)
        logo = change_filename(file_logo)
        form.url.data.save(app.config['UP_DIR'] + url)
        form.logo.data.save(app.config['UP_DIR'] + logo)
        movie = Movie(title=data['title'],
                      url=url,
                      info=data['info'],
                      logo=logo,
                      star=int(data['star']),
                      playnum=0,
                      comment_um=0,
                      tag_id=int(data['tag_id']),
                      area=data['area'],
                      release_time=data['release_time'],
                      lenght=data['lenght'])
        db.session.add(movie)
        db.session.commit()
        oplog = Oplog(admin_id=session['admin_id'],
                      ip=request.remote_addr,
                      reason='管理员%s添加电影%s' % (session['admin'], data['title']))
        db.session.add(oplog)
        db.session.commit()
        flash('添加电影成功!', 'ok')
        return redirect(url_for('admin.movie_add'))
    return render_template('admin/movie_add.html', form=form)
Example #6
0
def movie_add():
    movieform = MovieForm()
    if movieform.validate_on_submit():
        movieform.tag_id.choices = [(v.id, v.name) for v in Tag.query.all()]
        data = movieform.data
        file_url = secure_filename(movieform.url.data.filename)
        file_logo = secure_filename(movieform.logo.data.filename)
        if not os.path.exists(app.config["UP_DIR"]):
            os.makedirs(app.config["UP_DIR"])
        url = change_filename(file_url)
        logo = change_filename(file_logo)
        movieform.url.data.save(app.config["UP_DIR"] + url)
        movieform.logo.data.save(app.config["UP_DIR"] + logo)
        movie = Movie(title=data["title"],
                      url=url,
                      info=data["info"],
                      logo=logo,
                      star=int(data["star"]),
                      playnum=0,
                      commentnum=0,
                      tag_id=int(data["tag_id"]),
                      area=data["area"],
                      release_time=data["release_time"],
                      lenght=data["length"])
        db.session.add(movie)
        db.session.commit()
        flash("电影添加成功", "ok")
        util.InsertOplog("添加电影成功:" + movie.title)
        return redirect(url_for("admin.movie_add"))
    return render_template("admin/movie_add.html", form=movieform)
Example #7
0
def movie_add():
    """
    添加电影页面
    """
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        # file_url = secure_filename(form.url.data.filename)
        file_logo = secure_filename(form.logo.data.filename)
        if not os.path.exists(app.config["UP_DIR"]):
            # 创建一个多级目录
            os.makedirs(app.config["UP_DIR"])
            os.chmod(app.config["UP_DIR"], "rw")
        # url = change_filename(file_url)
        logo = change_filename(file_logo)
        # 保存
        # form.url.data.save(app.config["UP_DIR"] + url)
        form.logo.data.save(app.config["UP_DIR"] + logo)
        # url,logo为上传视频,图片之后获取到的地址
        movie = Movie(title=data["title"],
                      url=data["url"],
                      info=data["info"],
                      logo=logo,
                      star=int(data["star"]),
                      playnum=0,
                      commentnum=0,
                      tag_id=int(data["tag_id"]),
                      area=data["area"],
                      release_time=data["release_time"],
                      length=data["length"])
        db.session.add(movie)
        db.session.commit()
        flash("添加电影成功!", "ok")
        return redirect(url_for('admin.movie_add'))
    return render_template("admin/movie_add.html", form=form)
Example #8
0
def movie_add():
    form = MovieForm()
    if form.validate_on_submit():
        file_url = secure_filename(form.url.data.filename)
        file_logo = secure_filename(form.logo.data.filename)
        url = change_upload_filename(file_url)
        logo = change_upload_filename(file_logo)
        form.url.data.save(os.path.join(app.config['UP_MOVIE_DIR'], url))
        form.logo.data.save(os.path.join(app.config['UP_PIC_DIR'], logo))
        movie = Movie(
            title=form.title.data,
            url=url,
            info=form.info.data,
            logo=logo,
            star=int(form.star.data),
            playnum=0,
            commentnum=0,
            tag_id=int(form.tag_id.data),
            area=form.area.data,
            length=form.lenth.data,
            release_time=form.release_time.data,

        )
        db.session.add(movie)
        db.session.commit()
        flash("添加成功", "ok")
    return render_template('admin/movie_add.html', form=form)
Example #9
0
def movie_edit():
    """
    编辑电影页面
    :return:
    """
    form = MovieForm()
    form.url.validators = []
    form.logo.validators = []
    movie = Movie.query.get_or_404(int(id))
    if request.method == 'GET':
        form.info.data = movie.info
        form.tag_id.data = movie.tag_id
        form.star.data = movie.star
    if form.validate_on_submit():
        data = form.data
        movie_count = Movie.query.filter_by(title=data['title']).count()
        if movie_count == 1 and movie.title != data['title']:
            flash('片名已存在!', 'err')
            return redirect(url_for('admin.movie_edit', id=id))

        if not os.path.exists(app.config['UP_DIR']):
            os.makedirs(app.config['UP_DIR'])
            os.chmod(app.config['UP_DIR', 6])

        if form.url.data != "":
            file_url = secure_filename(form.url.data.filename)
            movie.url = change_filename(file_url)
            form.url.data.save(app.config['UP_DIR'] + movie.url)

        if form.logo.data != "":
            file_logo = secure_filename(form.data.filename)
            movie.logo = change_filename(file_logo)
            form.logo.data.save(app.config['UP_DIR'] + movie.url)
Example #10
0
def movie_add():
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        file_url = secure_filename(form.url.data.filename)
        logo_url = secure_filename(form.logo.data.filename)
        if not os.path.exists(app.config["UP_DIR"]):
            os.makedirs(app.config["UP_DIR"])
            os.chmod(app.config["UP_DIR"], "rw")
        url = change_filename(file_url)
        logo = change_filename(logo_url)
        form.url.data.save(app.config["UP_DIR"] + url)
        form.logo.data.save(app.config["UP_DIR"] + logo)

        movie = Movie(
            title=data["title"],
            url=url,
            info=data["info"],
            logo=logo,
            star=int(data["star"]),
            playnum=0,
            commentnum=0,
            tag_id=int(data["tag_id"]),
            release_time=data["release_time"],
            length=data["length"],
        )
        db.session.add(movie)
        db.session.commit()
        flash("添加电影成功!", "ok")
        return redirect(url_for("admin.movie_add"))
    return render_template("admin/movie_add.html", form=form)
Example #11
0
def movie_add():
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        file_url = secure_filename(form.url.data.filename)
        file_logo = secure_filename(form.logo.data.filename)
        if not os.path.exists(app.config["UP_DIR"]):
            os.mkdirs(app.config["UP_DIR"])
            os.chmod(app.config["UP_DIR"], "rw")
        url = change_filename(file_url)
        logo = change_filename(file_logo)
        form.url.data.save(app.config["UP_DIR"] + url)
        form.logo.data.save(app.config["UP_DIR"] + logo)

        movie = Movie(
            title=data['title'],
            #url=url,
            #info=data['info'],
            #logo=logo,
            #star=int(data['star']),
            playnum=0,
            commentnum=0,
            #tag_id=int(data['tag_id']),
            #area=data['area'],
            release_time=data['release_time'],
            #length=data['length'],
        )
        db.session.add(movie)
        db.session.commit()
        flash(" added succefully", "ok")
        return redirect(url_for("admin.movie_add"))
    return render_template("admin/movie_add.html", form=form)
Example #12
0
def movie_add():
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        file_url = secure_filename(form.url.data.filename)
        file_logo = secure_filename(form.logo.data.filename)
        if not os.path.exists(app.config['UP_DIR']):
            os.makedirs(app.config['UP_DIR'])  # 创建多级目录
            os.chmod(app.config['UP_DIR'], 'rw')  # 授予读写权限
        url = change_filename(file_url)
        logo = change_filename(file_logo)
        # 保存操作
        form.url.data.save(app.config['UP_DIR'] + url)
        form.logo.data.save(app.config['UP_DIR'] + logo)
        movie = Movie(
            title=data["title"],
            url=url,
            info=data["info"],
            logo=logo,
            star=int(data["star"]),
            playnum=0,
            commentnum=0,
            tag_id=int(data["tag_id"]),
            area=data["area"],
            release_time=data["release_time"],
            length=data["length"]
        )
        db.session.add(movie)
        db.session.commit()
        flash("添加电影成功", "ok")
        return redirect(url_for('admin.movie_add'))
    return render_template('admin/movie_add.html', form=form)
Example #13
0
def edit_movie(id=None):
    form = MovieForm()
    form.url.validators = []
    form.logo.validators = []
    movie = Movie.query.get_or_404(int(id))
    if request.method == "GET":
        form.info.data = movie.info
        form.tag_id.data = movie.tag_id
        form.star.data = movie.star
    if form.validate_on_submit():
        data = form.data
        file_url = form.url.data.filename
        file_logo = form.logo.data.filename
        if not os.path.exists(current_app.config["UP_DIR"]):
            os.makedirs(current_app.config["UP_DIR"])
            os.chmod(current_app.config["UP_DIR"], stat.S_IRWXO)
        form.url.data.save(current_app.config["UP_DIR"] + file_url)
        form.logo.data.save(current_app.config["UP_DIR"] + file_logo)

        movie.star = data["star"]
        movie.tag_id = data["tag_id"]
        movie.info = data["info"]
        movie.title = data["title"]
        movie.area = data["area"]
        movie.length = data["length"]
        movie.release_time = data["release_time"]
        movie.url = file_url
        movie.logo = file_logo
        db.session.commit()
        flash("修改电影成功!")
        return redirect(url_for('admin.edit_movie', id=id))
    return render_template("admin/edit_movie.html", form=form, movie=movie)
Example #14
0
def movie_add():
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        file_url = secure_filename(form.url.data.filename)
        file_logo = secure_filename(form.url.data.filename)
        if not os.path.exists(app.config["UP_DIR"]):
            os.makedirs(app.config["UP_DIR"])
            os.chmod(app.config["UP_DIR"], "rw")
        url = change_filename(file_url)
        logo = change_filename(file_logo)
        form.url.data.save(app.config["UP_DIR"] + url)
        form.logo.data.save(app.config["UP_DIR"] + logo)
        movie = Movie(
            title=data["title"],
            url=url,
            logo=logo,
            playnum=0,
            commentnum=0,
            author="admin",
            tag_id=int(data["tag"]),
        )
        db.session.add(movie)
        db.session.commit()
        flash("添加成功", "ok")
        return redirect(url_for('admin.movie_add'))
    return render_template("admin/movie_add.html", form=form)
Example #15
0
def movie_add():
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        file_url = secure_filename(form.url.data.filename)
        file_logo = secure_filename(form.logo.data.filename)
        if not os.path.exists(app.config['UP_DIR']):
            os.makedirs(app.config['UP_DIR'])
            os.chmod(app.config['UP_DIR'], 'rw')
        url = change_filename(file_url)
        logo = change_filename(file_logo)
        form.url.data.save(app.config['UP_DIR'] + url)
        form.logo.data.save(app.config['UP_DIR'] + logo)

        movie = Movie(title=data['title'],
                      url=url,
                      info=data['info'],
                      logo=logo,
                      star=int(data['star']),
                      playnum=0,
                      commentnum=0,
                      tag_id=int(data['tag_id']),
                      area=data['area'],
                      release_time=data['release_time'],
                      length=data['length'])
        db.session.add(movie)
        db.session.commit()
        flash('添加成功', 'ok')
        return redirect(url_for('admin.movie_add'))
    return render_template("admin/movie_add.html", form=form)
Example #16
0
def movie_add():
    movie_form = MovieForm()
    if movie_form.validate_on_submit():
        data = movie_form.data
        file_url = secure_filename(movie_form.url.data.filename)
        file_logo = secure_filename(movie_form.logo.data.filename)
        # 如果不存在路径就创建,给予可读可写权限
        if not os.path.exists(app.config["UP_DIR"]):
            os.makedirs(app.config["UP_DIR"])
            os.chmod(app.config["UP_DIR"], "rw")
        url = change_filename(file_url)
        logo = change_filename(file_logo)
        # 数据保存
        movie_form.url.data.save(app.config["UP_DIR"] + url)
        movie_form.logo.data.save(app.config["UP_DIR"] + logo)
        movie = Movie(title=data["title"],
                      url=url,
                      logo=logo,
                      star=int(data["star"]),
                      info=data["info"],
                      playnums=0,
                      commentnums=0,
                      tag_id=int(data["tag_id"]),
                      area=data["area"],
                      release_time=data["release_time"],
                      length=data["length"])
        db.session.add(movie)
        db.session.commit()
        flash("添加电影成功", 'ok')
        return redirect(url_for("admin.movie_add"))
    return render_template('admin/movie_add.html', movie_form=movie_form)
Example #17
0
def movie_edit(id=None):
    form = MovieForm()
    movie = Movie.query.get_or_404(id)
    if form.validate_on_submit() and movie:
        data = form.data
        file_logo = secure_filename(form.logo.data.filename)
        file_url = secure_filename(form.url.data.filename)
        logo = change_filename(file_logo)
        url = change_filename(file_url)
        form.logo.data.save(app.config['UP_DIR'] + logo)
        form.url.data.save(app.config['UP_DIR'] + url)
        movie.title = data['title']
        movie.url = url
        movie.info = data['info']
        movie.logo = logo
        movie.star = data['star']
        movie.tag_id = data['tag']
        movie.area = data['area']
        movie.length = data['length']
        movie.release_time = data['release_time']
        try:
            db.session.commit()
            flash('修改成功', 'ok')
        except Exception as e:
            db.session.rollback()
            flash('修改失败', 'err')
        return redirect(url_for('admin.movie_edit', id=id))
    return render_template('admin/movie_edit.html', form=form, movie=movie)
Example #18
0
def movie_add():
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        movie_count = Movie.query.filter_by(
            title=data["title"]).count()  #不可以有重复标签
        if movie_count == 1:
            flash(u"对应的影片已存在!", 'err')
            return redirect(url_for('admin.preview_add'))
        file_url = secure_filename(form.url.data.filename)
        file_logo = secure_filename(form.logo.data.filename)
        '''form.logo.data.filename  获取上传文件文件名'''
        if not os.path.exists(app.config["UP_DIR"]):  #判断长传目录是否存在
            os.makedirs(app.config["UP_DIR"])
            os.chmod(app.config["UP_DIR"], "rw")
        url = change_filename(file_url)  #修改为安全的名称
        logo = change_filename(file_logo)
        form.url.data.save(app.config["UP_DIR"] + url)  #保存文件
        form.logo.data.save(app.config["UP_DIR"] + logo)
        movie = Movie(title=data["title"],
                      url=url,
                      info=data["info"],
                      logo=logo,
                      star=int(data["star"]),
                      playnum=0,
                      commentnum=0,
                      tag_id=int(data["tag_id"]),
                      area=data["area"],
                      release_time=data["release_time"],
                      length=data["length"])
        db.session.add(movie)
        db.session.commit()
        flash(u"添加电影成功", 'OK')
        return redirect(url_for('admin.movie_add'))
    return render_template("admin/movie_add.html", form=form)
Example #19
0
def movie_add():
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        file_url = secure_filename(form.url.data.filename)
        file_logo = secure_filename(form.logo.data.filename)
        if not os.path.exists(app.config["UP_DIR"]):  # 如果文件夹不存在
            os.makedirs(app.config["UP_DIR"])  # 新建对应的文件夹
            os.chmod(app.config["UP_DIR"], "rw")  # 给文件夹赋予读写的权限
        url = change_filename(file_url)
        logo = change_filename(file_logo)
        # 把他们进行保存到文件夹下面
        form.url.data.save(app.config["UP_DIR"] + url)
        form.logo.data.save(app.config["UP_DIR"] + logo)
        # 之后的url和logo就是我们修改之后的地址
        movie = Movie(title=data["title"],
                      url=url,
                      info=data["info"],
                      logo=logo,
                      star=int(data["star"]),
                      playnum=0,
                      commentnum=0,
                      tag_id=int(data["tag_id"]),
                      area=data["area"],
                      release_time=data["release_time"],
                      length=data["length"])
        db.session.add(movie)
        db.session.commit()
        flash("电影添加成功!", "ok")
        return redirect(url_for('admin.movie_add'))
    return render_template("admin/movie_add.html", form=form)
Example #20
0
def movie_add():
    # 添加电影页面
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        res = allowed_file(form.logo.data.filename)
        if res == False:
            flash(u"图片类型不支持!", "err")
            return render_template("admin/movie_add.html", form=form)
        file_url = secure_filename(change_filename(form.url.data.filename))
        file_logo = secure_filename(change_filename(form.logo.data.filename))
        check_upload_dir()

        # 保存
        form.url.data.save(app.config['UPLOAD_DIR'] + file_url)
        form.logo.data.save(app.config['UPLOAD_DIR'] + file_logo)
        movie = Movie(title=data["title"],
                      url=file_url,
                      info=data["info"],
                      logo=file_logo,
                      star=int(data["star"]),
                      playnum=0,
                      commentnum=0,
                      tag_id=int(data["tag_id"]),
                      area=data["area"],
                      release_time=data["release_time"],
                      length=data["length"])
        db.session.add(movie)
        try:
            db.session.commit()
            flash(u"添加电影成功!", "ok")
        except:
            flash(u"添加电影失败!", "err")
    return render_template("admin/movie_add.html", form=form)
Example #21
0
def movie_add():
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        # 获取上传文件的url
        file_url = secure_filename(form.url.data.filename)
        file_logo = secure_filename(form.logo.data.filename)
        if not os.path.exists(init_up_config(app)):
            os.makedirs(init_up_config(app))
            #     授权 可读,可写
            os.chmod(init_up_config(app), 777)
        url = change_filename(file_url)
        logo = change_filename(file_logo)
        form.url.data.save(init_up_config(app) + url)
        form.url.data.save(init_up_config(app) + logo)
        movie = Movie(title=data['title'],
                      url=url,
                      info=data['info'],
                      logo=logo,
                      star=int(data["star"]),
                      playnum=0,
                      commentnum=0,
                      tag_id=int(data["tag_id"]),
                      area=data["area"],
                      release_time=data["release_time"],
                      length=data["length"])
        db.session.add(movie)
        db.session.commit()
        flash("添加电影成功!", "ok")
        return redirect(url_for('admin.movie_add'))
    return render_template("admin/movie_add.html", form=form)
Example #22
0
def movie_add():
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        file_url = secure_filename(form.url.data.filename)
        file_logo = secure_filename(form.logo.data.filename)
        if not os.path.exists(app.config["UP_DIR"]):
            os.makedirs(app.config["UP_DIR"])
            os.chmod(app.config["UP_DIR"], "rw")
        url = change_filename(file_url)
        logo = change_filename(file_logo)
        form.url.data.save(app.config["UP_DIR"] + url)
        form.logo.data.save(app.config["UP_DIR"] + logo)
        movie = Movie(title=data['title'],
                      url=url,
                      info=data['info'],
                      logo=logo,
                      star=int(data['star']),
                      playnum=0,
                      commentnum=0,
                      tag_id=int(data['tag_id']),
                      area=data['area'],
                      releasetime=data["release_time"],
                      length=data['length'])
        db.session.add(movie)
        db.session.commit()
        oplog = OpLog(admin_id=session["aid"],
                      ip=request.remote_addr,
                      reason="add movie " + movie.title)
        db.session.add(oplog)
        db.session.commit()
        flash("movie add success", "ok")
        return redirect(url_for('admin.movie_add'))
    return render_template("admin/movie_add.html", form=form)
Example #23
0
def movie_add():
    """ 添加电影 """
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        file_url = secure_filename(form.url.data.filename)
        file_logo = secure_filename(form.logo.data.filename)
        if not os.path.exists(app.config["UP_DIR"]):  # 如果目录不存在则创建目录
            os.makedirs(app.config["UP_DIR"])
        url = change_filename(file_url)  # 生成视频保存路径
        logo = change_filename(file_logo)  # 生成图片保存路径
        form.url.data.save(app.config["UP_DIR"] + url)  # 保存视频
        form.logo.data.save(app.config["UP_DIR"] + logo)  # 保存图片
        # 创建电影并保存到数据库中
        movie = Movie(
            title=data["title"],
            url=url,
            info=data["info"],
            logo=logo,
            star=int(data["star"]),
            tag_id=int(data["tag_id"]),
            area=data["area"],
            release_time=data["release_time"],
            length=data["length"]
        )
        db.session.add(movie)
        db.session.commit()
        flash("添加电影成功!", "ok")
        return redirect(url_for('admin.movie_add'))
    return render_template("admin/movie_add.html", form=form)
Example #24
0
def movie_add():
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        if not os.path.exists(app.config["UP_DIR"]):  # 创建“上传文件夹”
            os.makedirs(app.config["UP_DIR"])  # 创建目录
            os.chmod(
                app.config["UP_DIR"], 644
            )  # 授权 r=4, w=2, r=1  # os.chmod(app.config["UP_DIR"], 'rw')

        file_url = secure_filename(form.url.data.filename)  # werkzeu工具安全文件名
        url = change_filename(file_url)
        form.url.data.save(app.config["UP_DIR"] + url)  # 保存文件操作
        file_logo = secure_filename(form.logo.data.filename)
        logo = change_filename(file_logo)
        form.logo.data.save(app.config["UP_DIR"] + logo)  # 保存文件操作

        movie = Movie(title=data["title"],
                      url=url,
                      logo=logo,
                      info=data["info"],
                      star=int(data["star"]),
                      playnum=0,
                      commentnum=0,
                      tag_id=int(data["tag_id"]),
                      area=data["area"],
                      release_time=data["release_time"],
                      length=data["length"])
        db.session.add(movie)
        db.session.commit()
        flash("电影添加成功", "ok")
        return redirect(url_for("admin.movie_list", page=1))
    return render_template("admin/movie_add.html", form=form)
Example #25
0
def movie_add():
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        file_url = secure_filename(form.url.data.filename)  # 获取上传文件的地址
        file_logo = secure_filename(form.logo.data.filename)
        if not os.path.exists(app.config["UP_DIR"]):
            os.makedirs(app.config["UP_DIR"])
            os.chmod(app.config["UP_DIR"], "rw")  # 给文件夹授权
        url = change_filename(file_url)
        logo = change_filename(file_logo)
        # 保存文件
        form.url.data.save(app.config["UP_DIR"] + url)
        form.logo.data.save(app.config["UP_DIR"] + logo)
        movie = Movie(title=data["title"],
                      url=url,
                      info=data["info"],
                      logo=logo,
                      star=int(data["star"]),
                      playnum=0,
                      commentnum=0,
                      tag_id=int(data["tag_id"]),
                      area=data["area"],
                      release_time=data["release_time"],
                      length=data["length"])
        db.session.add(movie)
        db.session.commit()
        flash("添加电影成功!", "ok")
        oplog = Oplog(admin_id=session["admin_id"],
                      ip=request.remote_addr,
                      reason="添加电影%s" % data["title"])
        db.session.add(oplog)
        db.session.commit()
        return redirect(url_for('admin.movie_add'))
    return render_template("admin/movie_add.html", form=form)
Example #26
0
def add_movie():
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        file_url = form.url.data.filename
        file_logo = form.logo.data.filename
        if not os.path.exists(current_app.config["UP_DIR"]):
            os.makedirs(current_app.config["UP_DIR"])
            os.chmod(current_app.config["UP_DIR"], stat.S_IRWXO)
        form.url.data.save(current_app.config["UP_DIR"] + file_url)
        form.logo.data.save(current_app.config["UP_DIR"] + file_logo)

        movie = Movie(title=data["title"],
                      info=data["info"],
                      star=int(data["star"]),
                      play_num=0,
                      comment_num=0,
                      tag_id=int(data["tag_id"]),
                      area=data["area"],
                      release_time=data["release_time"],
                      length=data["length"],
                      url=file_url,
                      logo=file_logo)
        db.session.add(movie)
        db.session.commit()
        flash("添加电影成功!")
        return redirect(url_for('admin.add_movie'))
    return render_template("admin/add_movie.html", form=form)
Example #27
0
def movie_add():
    form = MovieForm()
    if form.validate_on_submit():
        data = form.data
        file_url = secure_filename(form.url.data.filename)
        file_logo = secure_filename(form.logo.data.filename)
        if not os.path.exists(app.config["UP_DIR"]):
            os.makedirs(app.config["UP_DIR"])
            os.chmod(app.config["UP_DIR"], "rw")
        url = change_filename(file_url)
        logo = change_filename(file_logo)
        form.url.data.save(app.config["UP_DIR"] + url)
        form.logo.data.save(app.config["UP_DIR"] + logo)
        movie = Movie(
            title=data['title'],
            url=url,
            info=data["info"],
            logo=logo,
            star=int(data["star"]),
            playnum=0,
            commentnum=0,
            tag_id=int(data["tag_id"]),
            area=data["area"],
            release_time=data["release_time"],
            length=data["length"],
        )
        db.session.add(movie)
        db.session.commit()
        flash("添加电影成功!", "ok")
        return redirect(url_for('admin.movie_add'))
    return render_template("admin/movie_add.html", form=form)
Example #28
0
def movie_add():
    form = MovieForm()
    if form.validate_on_submit():
        print(form.url.data)
        file_url = secure_filename(form.url.data.filename)
        file_logo = secure_filename(form.logo.data.filename)
        if not os.path.exists(app.config['UP_DIR']):
            os.mkdir(app.config['UP_DIR'])

        url = change_filename(file_url)
        logo = change_filename(file_logo)
        form.url.data.save(os.path.join(app.config['UP_DIR'], url))
        form.logo.data.save(os.path.join(app.config['UP_DIR'], logo))

        data = form.data
        movie = Movie(title=data['title'],
                      url=url,
                      info=data['info'],
                      logo=logo,
                      speaker=data['speaker'],
                      speaker_info=data['speaker_info'])
        db.session.add(movie)
        db.session.commit()
        flash('添加电影成功!', "ok")
        return redirect(url_for('admin.movie_add'))
    return render_template("admin/movie_add.html", form=form)
Example #29
0
def movie_edit(movie_id=None):
    if movie_id is None:
        movie_id = 1

    form = MovieForm()
    form.tag_id.choices = [(v.id, v.name) for v in Tag.query.all()]

    form.url.validators = []
    form.logo.validators = []

    movie = Movie.query.get_or_404(int(movie_id))
    print('查询操作成功')
    if request.method == 'GET':  # 在修改前在修改栏里面显示原来的值作为默认值
        # --> fixme 不能在编辑页面中的默认编辑框中保存默认文件
        form.info.data = movie.info
        form.tag_id.data = movie.tag_id
        form.star.data = movie.star

    if form.validate_on_submit() is True:
        data = form.data

        # 对片名进行唯一性检查,如果已经存在该片名则返回错误信息返回编辑页面
        movie_count = Movie.query.filter_by(title=data['title']).count()
        if movie_count is not 0 and movie.title != data['title']:
            flash('该片名已经存在', 'err')
            return redirect(url_for('admin.movie_edit', movie_id=movie_id))

        movie.title = data['title']  # 修改
        movie.star = data['star']
        movie.info = data['info']
        movie.tag_id = data['tag_id']
        movie.area = data['area']
        movie.length = data['length']
        movie.release_time = data['release_time']

        # 将视频以及图片文件保存到本地
        path = create_app().config['UP_DIR']
        if os.path.exists(path) is False:
            os.makedirs(path)  # 当保存路径不存在时进行创建 √

        if form.url.data.filename is not '':
            movie.url = change_filename(form.url.data.filename)
            form.url.data.save(path + movie.url)

        if form.logo.data.filename is not '':
            movie.logo = change_filename(form.logo.data.filename)
            form.logo.data.save(path + movie.logo)

        # logo = change_filename(form.logo.data.filename)
        #
        # form.url.data.save(path + url)
        # form.logo.data.save(path + logo)

        db.session.add(movie)  # 保存属性名以及属性内容(str)
        db.session.commit()

        flash('修改成功', 'ok')
        return redirect(url_for('admin.movie_edit', movie_id=movie.id))
    return render_template('admin/movie_edit.html', form=form, movie=movie)
Example #30
0
def movie_edit(id=None):
    form = MovieForm()
    form.url.validators = []  # 因为可以不做更改,所以不需要校验
    form.logo.validators = []
    movie = Movie.query.get_or_404(id)
    page = page_data.page if page_data is not None else 1
    if request.method == "GET":
        form.info.data = movie.info
        form.star.data = movie.star
        form.tag_id.data = movie.tag_id
    if form.validate_on_submit():
        data = form.data
        movie_count = Movie.query.filter_by(title=data["title"]).count()
        if movie_count == 1 and movie.title != data['title']:
            flash("片名已经存在!", "err")
            return redirect(url_for("admin.movie_edit", id=id))

        if not os.path.exists(app.config['UP_DIR']):  # 存放目录不存在则创建
            os.makedirs(app.config['UP_DIR'])
            os.chmod(app.config['UP_DIR'], "rw")

        if form.url.data.filename != '':
            old_url = movie.url
            file_url = secure_filename(
                form.url.data.filename)  # 获取并转化为安全的电影文件名
            movie.url = change_filename(file_url)  # 调用函数生成新的文件名
            form.url.data.save(app.config['UP_DIR'] + movie.url)  # 保存上传的数据
            if os.path.exists(app.config['UP_DIR'] + old_url):  # 删除旧文件
                os.remove(app.config['UP_DIR'] + old_url)

        if form.logo.data.filename != '':
            old_logo = movie.logo
            file_logo = secure_filename(form.logo.data.filename)
            movie.logo = change_filename(file_logo)
            form.logo.data.save(app.config['UP_DIR'] + movie.logo)
            if os.path.exists(app.config['UP_DIR'] + old_logo):
                os.remove(app.config['UP_DIR'] + old_logo)

        oplog = Oplog(admin_id=session["admin_id"],
                      ip=request.remote_addr,
                      reason="修改电影:%s(原名:%s)" % (data["title"], movie.title))
        db.session.add(oplog)
        db.session.commit()

        movie.title = data["title"]
        movie.info = data["info"]
        movie.star = int(data["star"])
        movie.tag_id = int(data["tag_id"])
        movie.area = data["area"]
        movie.release_time = data["release_time"]
        movie.length = data["length"]
        db.session.add(movie)
        db.session.commit()
        flash("修改电影成功!", "ok")
        return redirect(url_for("admin.movie_list", page=page))
    return render_template("admin/movie_edit.html",
                           form=form,
                           movie=movie,
                           page=page)
Example #31
0
def movie_edit(id=None):
    """电影编辑"""
    form = MovieForm()
    form.submit.label.text = "编辑"
    # 编辑状态,url和logo已经存在,表单不必进行过滤
    form.url.validators = []
    form.logo.validators = []
    movie = Movie.query.get_or_404(int(id))
    if request.method == 'GET':
        form.info.data = movie.info
        form.star.data = movie.star
        form.tag_id.data = movie.tag_id
    if form.validate_on_submit():
        data = form.data
        movie_count = Movie.query.filter_by(title=data['title']).count()
        # 片名已经存在,不必重复进行编辑
        if movie_count == 1 and movie.title != data['title']:
            flash("片名已经存在,请重新编辑!", "err")
            return redirect(url_for('admin.movie_edit', id=id))

        # 如果目录不存在,再创建一个多级目录
        if not os.path.exists(app.config["UP_DIR"]):
            os.makedirs(app.config["UP_DIR"])
            os.chmod(app.config["UP_DIR"], 'rw')

        # 上传视频
        if form.url.data != '':  # 说明已经重新上传了视频
            # 先删除本地的视频
            if os.path.exists(app.config['UP_DIR'] + movie.url):
                os.remove(app.config['UP_DIR'] + movie.url)
                print("rm-movie.url:" + app.config['UP_DIR'] + movie.url)
            file_url = secure_filename(form.url.data.filename)
            print("file_url:"+file_url)
            movie.url = change_filename(file_url)
            form.url.data.save(app.config["UP_DIR"] + movie.url)
            print("save-movie.url:" + app.config['UP_DIR'] + movie.url)

        # 上传logo
        if form.logo.data != '':  # 说明已经重新上传了封面
            # 先删除本地的封面
            if os.path.exists(app.config['UP_DIR'] + movie.logo):
                os.remove(app.config['UP_DIR'] + movie.logo)
                print("rm-movie.logo:" + app.config['UP_DIR'] + movie.logo)
            file_logo = secure_filename(form.logo.data.filename)
            movie.logo = change_filename(file_logo)
            form.logo.data.save(app.config["UP_DIR"] + movie.logo)

        movie.title = data['title']
        movie.info = data['info']
        movie.star = data['star']
        movie.tag_id = data['tag_id']
        movie.area = data['area']
        movie.length = data['length']
        movie.release_time = data['release_time']
        db.session.add(movie)
        db.session.commit()
        flash("修改电影成功!", "ok")
        return redirect(url_for('admin.movie_edit', id=id))
    return render_template('admin/movie_edit.html', form=form, movie=movie)
Example #32
0
def movie_edit(id=None):
    form = MovieForm()
    form.url.validators = []
    form.logo.validators = []
    movie = Movie.query.get_or_404(int(id))
    url = movie.url
    logo = movie.logo
    if request.method == "GET":
        form.info.data = movie.info
        form.tag_id.data = movie.tag_id
        form.star.data = movie.star
    if form.validate_on_submit():
        data = form.data
        movie_count = Movie.query.filter_by(title=data["title"]).count()
        if movie_count == 1 and movie.title != data["title"]:
            flash("片名已经存在!", "err")
            return redirect(url_for('admin.movie_edit', id=id))

        if not os.path.exists(app.config["UP_DIR"]):
            os.makedirs(app.config["UP_DIR"])
            os.chmod(app.config["UP_DIR"], "rw")

        if form.url.data != "":
            file_url = secure_filename(form.url.data.filename)
            movie.url = change_filename(file_url)
            form.url.data.save(app.config["UP_DIR"] + movie.url)
            if os.path.exists(app.config["UP_DIR"] + url):
                os.remove(app.config["UP_DIR"] + url)

        if form.logo.data != "":
            file_logo = secure_filename(form.logo.data.filename)
            movie.logo = change_filename(file_logo)
            form.logo.data.save(app.config["UP_DIR"] + movie.logo)
            if os.path.exists(app.config["UP_DIR"] + logo):
                os.remove(app.config["UP_DIR"] + logo)

        movie.star = data["star"]
        movie.tag_id = data["tag_id"]
        movie.info = data["info"]
        movie.title = data["title"]
        movie.area = data["area"]
        movie.length = data["length"]
        movie.release_time = data["release_time"]
        db.session.add(movie)
        db.session.commit()
        flash("电影修改成功!", "ok")
        return redirect(url_for("admin.movie_edit", id=movie.id))
    return render_template("admin/movie_edit.html", form=form, movie=movie)