예제 #1
0
def forge():
    """Generate fake data."""
    db.create_all()

    name = 'Jerry'
    movies = [
        {'title': 'My Neighbor Totoro', 'year': '1988'},
        {'title': 'Dead Poets Society', 'year': '1989'},
        {'title': 'A Perfect World', 'year': '1993'},
        {'title': 'Leon', 'year': '1994'},
        {'title': 'Mahjong', 'year': '1996'},
        {'title': 'Swallowtail Butterfly', 'year': '1996'},
        {'title': 'King of Comedy', 'year': '1999'},
        {'title': 'Devils on the Doorstep', 'year': '1999'},
        {'title': 'WALL-E', 'year': '2008'},
        {'title': 'The Pork of Music', 'year': '2012'},
    ]

    user = User(name=name)
    db.session.add(user)
    for m in movies:
        movie = Movie(title=m['title'], year=m['year'])
        db.session.add(movie)

    db.session.commit()
    click.echo('Done.')
예제 #2
0
def forge():
    db.create_all()
    name = "Bel"
    movies = [
        {
            'title': '杀破狼',
            'content': '正经八百看看揭不开锅',
            'author': 'Belmod',
            'pubdate': '2020_02_29 12:52:09.337867'
        },
        {
            'title': '小鬼当家',
            'content': '正经八百看看揭不开锅',
            'author': 'zhangsan',
            'pubdate': '2020_02_29 12:52:09.337867'
        },
    ]
    user = User(name=name)
    db.session.add(user)
    for m in movies:
        movie = Ariticles(title=m['title'],
                          content=m['content'],
                          author=m['author'],
                          pubdate=m['pubdate'])
        db.session.add(movie)
    db.session.commit()
    click.echo('数据导入完成')
예제 #3
0
파일: views.py 프로젝트: LeenField/MyWeb
def register():
    # db.drop_all()
    # db.create_all()       # 只有在数据库模型修改时使用
    if request.method == 'POST':
        user_name = request.form['username']
        passport = request.form['passport']
        passport_check = request.form['passport-check']
        name_pattern = re.compile(r"\w{4,8}")  # 逗号后面不需要空格
        pass_pattern = re.compile(r".{6,20}")
        if passport_check != passport:
            flash("两次输入密码不匹配")
        elif name_pattern.match(user_name) == None:
            flash("用户名为4~8位数字字母")
        elif pass_pattern.match(passport) == None:
            flash("密码为6~20位")
        elif User.query.filter_by(username="******").all():
            flash("该用户名已存在")
        else:
            temp_user = User(username=user_name)
            temp_user.set_password(passport)

            db.session.add(temp_user)
            db.session.commit()
            flash("注册成功")
            return redirect(url_for('login'))
    print("Test!")
    return render_template("SignIn.html")
예제 #4
0
def register():

    if request.method == 'POST':
        username = request.form['username']
        password = request.form['password']
        confirmpassword = request.form['Confirmpassword']

        user = User.query.filter_by(username=username).first()

        if user is not None:
            flash('register fail!  this username already exsit!')
            return redirect(url_for('register'))
        if password != confirmpassword:
            flash('Two password entries are inconsistent!')
            return redirect(url_for('register'))

        user = User(username=username, name=username)
        user.set_password(password)
        db.session.add(user)

        db.session.commit()
        flash('register success!')  # 如果验证失败,显示错误消息
        return redirect(url_for('login'))  # 重定向回登录页面

    return render_template('register.html')
예제 #5
0
def forge():
    """Generate fake data"""
    db.create_all()

    name = "Hao Wang"
    movies = [
        {"title": "My Neighbor Totoro", "year": "1988"},
        {"title": "Dead Poets Society", "year": "1989"},
        {"title": "A Perfect World", "year": "1993"},
        {"title": "Leon", "year": "1994"},
        {"title": "Mahjong", "year": "1996"},
        {"title": "Swallowtail Butterfly", "year": "1996"},
        {"title": "King of Comedy", "year": "1999"},
        {"title": "Devils on the Doorstep", "year": "1999"},
        {"title": "WALL-E", "year": "2008"},
        {"title": "The Pork of Music", "year": "2012"},
    ]

    user = User(name=name)
    db.session.add(user)
    for m in movies:
        movie = Movie(title=m["title"], year=m["year"])
        db.session.add(movie)

    db.session.commit()
    click.echo("Done.")
예제 #6
0
def forge():
    db.create_all()

    name = "peter"
    movies = [{
        'title': '流浪地球',
        'year': '2019'
    }, {
        'title': '千与千寻',
        'year': '2001'
    }, {
        'title': '海上钢琴师',
        'year': '1998'
    }, {
        'title': '复仇者联盟4',
        'year': '2019'
    }, {
        'title': '疯狂的外星人',
        'year': '2019'
    }, {
        'title': '寄生虫',
        'year': '2019'
    }]
    user = User(name=name)
    db.session.add(user)
    for m in movies:
        movie = Movie(title=m['title'], year=m['year'])
        db.session.add(movie)

    db.session.commit()
    click.echo('Done.')
예제 #7
0
def forge():
    """Generate fake data."""
    db.create_all()

    name = '杨福'
    movies = [
        {'title': '肖申克的救赎', 'year': '1994'},
        {'title': '霸王别姬', 'year': '1993'},
        {'title': '这个杀手不太冷', 'year': '1994'},
        {'title': '阿甘正传', 'year': '1994'},
        {'title': '泰坦尼克号', 'year': '1997'},
        {'title': '千与千寻', 'year': '2001'},
        {'title': '盗梦空间', 'year': '2010'},
        {'title': '忠犬八公的故事', 'year': '2009'},
        {'title': '摔跤吧!爸爸', 'year': '2016'},
        {'title': '罗马假日', 'year': '1953'},
    ]

    user = User(name=name)
    db.session.add(user)
    for m in movies:
        movie = Movie(title=m['title'], year=m['year'])
        db.session.add(movie)

    db.session.commit()
    click.echo('Done.')
예제 #8
0
def forge():
    db.create_all()

    name = 'Ricky Weng'
    movies = [
        {'title': 'Zelig', 'year': '1983'},
        {'title': '童年往事', 'year': '1985'},
        {'title': '戀戀風塵', 'year': '1986'},
        {'title': '重慶森林', 'year': '1994'},
        {'title': '阳光灿烂的日子', 'year': '1994'},
        {'title': 'キッズ・リターン', 'year': '1996'},
        {'title': '小武', 'year': '1998'},
        {'title': '一一', 'year': '2000'},
        {'title': '三峡好人', 'year': '2006'},
        {'title': '海よりもまだ深', 'year': '2016'}
    ]

    user = User(name=name)
    db.session.add(user)
    for m in movies:
        movie = Movie(title=m['title'], year=m['year'])
        db.session.add(movie)

    db.session.commit()
    click.echo('Done.')
예제 #9
0
파일: commands.py 프로젝트: hui-yu1/hui-yu1
def forge():
    name = 'lion'
    movies = [
        {
            "title": "萨霍",
            "year": "2019"
        },
        {
            "title": "星游记",
            "year": "2020"
        },
        {
            "title": "急速备战",
            "year": "2019"
        },
        {
            "title": "叶问4",
            "year": "2019"
        },
        {
            "title": "三人行",
            "year": "2016"
        },
    ]
    user = User(name=name)
    db.session.add(user)
    for m in movies:
        movie = Movie(title=m['title'], year=m['year'])
        db.session.add(movie)
    db.session.commit()
    click.echo("导入数据完成")
예제 #10
0
def forge():
    """生成构造数据"""
    db.create_all()
    name = 'hanqingqing'
    movies = [
        {
            'title': 'My macos',
            'year': '2018'
        },
        {
            'title': 'My windows',
            'year': '2013'
        },
        {
            'title': 'My ubuntu',
            'year': '2018'
        },
    ]
    user = User(name=name)
    db.session.add(user)
    for m in movies:
        movie = Movie(title=m['title'], year=m['year'])
        db.session.add(movie)
    db.session.commit()
    click.echo('Done')
예제 #11
0
def forge():
    name = "Chris"
    movies = [{
        "title": "大赢家",
        "year": "2020"
    }, {
        "title": "囧妈",
        "year": "2020"
    }, {
        "title": "战狼",
        "year": "2019"
    }, {
        "title": "叶问2",
        "year": "2016"
    }, {
        "title": "疯狂外星人",
        "year": "2019"
    }]
    user = User(name=name)
    db.session.add(user)
    for i in movies:
        movie = Movie(title=i["title"], year=i["year"])
        db.session.add(movie)
    db.session.commit()
    click.echo("导入数据库完成")
예제 #12
0
def inject_vars():  # 函数名可以随意修改
    """模板上下文处理函数"""
    from watchlist.models import User
    user = User.query.first()  # 用户对象
    if not user:
        user = User()
        user.name = 'BL00D'
    return locals()  # 需要返回字典
예제 #13
0
def forge(count):
    """Generate fake data."""
    from faker import Faker

    db.drop_all()
    db.create_all()

    # 全局的两个变量移动到这个函数内
    name = "Five Hao"
    movies = [{
        'title': 'My Neighbor Totoro',
        'year': '1988'
    }, {
        'title': 'Dead Poets Society',
        'year': '1989'
    }, {
        'title': 'A Perfect World',
        'year': '1993'
    }, {
        'title': 'Leon',
        'year': '1994'
    }, {
        'title': 'Mahjong',
        'year': '1996'
    }, {
        'title': 'Swallowtail Butterfly',
        'year': '1996'
    }, {
        'title': 'King of Comedy',
        'year': '1999'
    }, {
        'title': 'Devils on the Doorstep',
        'year': '1999'
    }, {
        'title': 'WALL-E',
        'year': '2008'
    }, {
        'title': 'The Pork of Music',
        'year': '2012'
    }]

    user = User(name=name)
    db.session.add(user)
    for m in movies:
        movie = Movie(title=m['title'], year=m['year'])
        db.session.add(movie)

    fake = Faker()

    for i in range(count):
        message = Message(name=fake.name(),
                          body=fake.sentence(),
                          timestamp=fake.date_time_this_year())
        db.session.add(message)

    db.session.commit()
    click.echo('Done.')
예제 #14
0
def forge():
    """生成假数据"""
    db.create_all()
    name = 'Nathon Drake'
    movies = [
        # {'title':'Forist Gump', 'year':'1991'}
        {
            'title': 'Iron Man',
            'year': '2008'
        },
        {
            'title': 'Incredible Hulk',
            'year': '2008'
        },
        {
            'title': 'Captain America',
            'year': '2008'
        },
        {
            'title': 'Thor',
            'year': '2010'
        },
        {
            'title': 'Avengers',
            'year': '2012'
        },
        {
            'title': 'Captain America:Cival War',
            'year': '2015'
        },
        {
            'title': 'Blank Panther',
            'year': '2017'
        },
        {
            'title': 'Avengers:Infinity War',
            'year': '2018'
        },
        {
            'title': 'Captain Marvel',
            'year': '2019'
        },
        {
            'title': 'Avengers:End Game',
            'year': '2019'
        }
    ]
    user = User(name=name)
    db.session.add(user)
    for m in movies:
        movie = Movie(title=m['title'], year=m['year'])
        db.session.add(movie)

    db.session.commit()
    click.echo('Done!')
예제 #15
0
 def setUp(self):
     app.config.update(TESTING=True,
                       SQLALCHEMY_DATABASE_URI='sqlite:///:memory:')
     db.create_all()
     user = User(name='Test', username='******')
     user.set_password('123')
     movie = Movie(title='Test Movie Title', year='2019')
     db.session.add_all([user, movie])
     db.session.commit()
     self.client = app.test_client()  # 创建测试客户端
     self.runner = app.test_cli_runner()  # 创建命令运行器
예제 #16
0
def initdb(drop):
    """Initialize the database."""
    if drop:  # 判断是否输入了选项
        db.drop_all()
    db.create_all()

    user = User(email=os.environ.get('EMAIL1'))
    user.set_password(os.environ.get('PASSWORD'))
    db.session.add(user)

    user = User(email=os.environ.get('EMAIL2'))
    user.set_password(os.environ.get('PASSWORD'))
    db.session.add(user)

    user = User(email=os.environ.get('EMAIL3'))
    user.set_password(os.environ.get('PASSWORD'))
    db.session.add(user)

    db.session.commit()
    click.echo('Initialized database.')  # 输出提示信息
예제 #17
0
def aaa():
    db.create_all()
    name = "mrliu"
    articles = [{
        'title': '杀破狼',
        'content': '2003',
        'pubdate': '2000'
    }, {
        'title': '扫毒',
        'content': '2018',
        'pubdate': '2000'
    }, {
        'title': '捉妖记',
        'content': '2016',
        'pubdate': '2000'
    }, {
        'title': '囧妈',
        'content': '2020',
        'pubdate': '2000'
    }, {
        'title': '葫芦娃',
        'content': '1989',
        'pubdate': '2000'
    }, {
        'title': '玻璃盒子',
        'content': '2020',
        'pubdate': '2000'
    }, {
        'title': '调酒师',
        'content': '2020',
        'pubdate': '2000'
    }, {
        'title': '釜山行',
        'content': '2017',
        'pubdate': '2000'
    }, {
        'title': '导火索',
        'content': '2005',
        'pubdate': '2000'
    }, {
        'title': '叶问',
        'content': '2015',
        'pubdate': '2000'
    }]
    user = User(name=name)
    db.session.add(user)
    for a in articles:
        article = Ariticles(title=a['title'],
                            content=a['content'],
                            author='mrliu',
                            pubdate=a['pubdate'])
        db.session.add(article)
    db.session.commit()
    click.echo('数据导入完成')
예제 #18
0
def admin(username, password):
    db.create_all()
    if all([username, password
            ]) and not User.query.filter_by(username=username).first():
        user = User(username=username)
        user.set_password(password)
        db.session.add(user)
    else:
        click.echo('未成功创建,原因可能是重复或者信息填写错误')
        exit()

    click.echo('创建管理员账号完成')
예제 #19
0
def admin(username, password):
    db.create_all()
    user = User.query.first()
    if user is not None:
        user.username = username
        user.set_password(password)
    else:
        user = User(username=username, name='admin')
        user.set_password(password)
        db.session.add(user)
    db.session.commit()
    click.echo('Done')
예제 #20
0
def teacherinfo():
    if not current_user.is_authenticated:
        return redirect(url_for('index'))
    if current_user.isAdmin != 1:
        return redirect(url_for('index'))

    if request.method == 'POST':

        name = request.form['name']
        username = request.form['username']
        password = request.form['password']
        validate_password = request.form['validate_password']

        if not name or len(name) > 20:
            flash('姓名必须小于20位')
            return redirect(url_for('settings'))

        if not username or len(username) > 20:
            flash('用户名必须小于20位')
            return redirect(url_for('settings'))

        if not password or len(password) > 20:
            flash('密码必须小于20位')
            return redirect(url_for('settings'))

        if password != validate_password:
            flash('密码不一致')
            return redirect(url_for('settings'))

        user = User(name=name, username=username)
        user.set_password(password)
        db.session.add(user)
        count = db.session.commit()
        print("count", count)
        flash('添加成功!')

        return redirect(url_for('teacherinfo'))

    teacherlist = User.query.order_by(User.id.asc()).all()

    #瞎搞
    result = db.session.query(
        Movie.teacherId,
        func.count(Movie.teacherId).label('count'),
    ).group_by(Movie.teacherId).all()
    student_count_dict = {}
    for item in result:
        student_count_dict[item[0]] = item[1]
    print(student_count_dict)

    return render_template('teacherinfo.html',
                           teacherlist=teacherlist,
                           student_count_dict=student_count_dict)
예제 #21
0
def forge():
    db.create_all()
    name = "lv"
    movies = [
        {
            'title': '杀破狼',
            'year': '2003'
        },
        {
            'title': '扫毒',
            'year': '2018'
        },
        {
            'title': '捉妖记',
            'year': '2016'
        },
        {
            'title': '囧妈',
            'year': '2020'
        },
        {
            'title': '葫芦娃',
            'year': '1989'
        },
        {
            'title': '杀破狼',
            'year': '2003'
        },
        {
            'title': '扫毒',
            'year': '2018'
        },
        {
            'title': '捉妖记',
            'year': '2016'
        },
        {
            'title': '囧妈',
            'year': '2020'
        },
        {
            'title': '葫芦娃',
            'year': '1989'
        },
    ]
    user = User(name=name)
    db.session.add(user)
    for m in movies:
        movie = Movie(title=m['title'], year=m['year'])
        db.session.add(movie)
    db.session.commit()
    click.echo('数据导入完成')
예제 #22
0
def admin(username, password):
    user = User.query.first()
    if user is not None:
        click.echo("更新管理员账户")
        user.username = username
        user.set_password(password)
    else:
        click.echo("创建管理员账户")
        user = User(username=username, name='Admin')
        user.set_password(password)
        db.session.add(user)
    db.session.commit()
    click.echo("管理员账号更新/创建完成")
예제 #23
0
    def setUp(self):
        app.config.update(TESTING=True,
                          SQLALCHEMY_DATABASE_URI='sqlite:///:memory:')

        db.create_all()
        user = User(name="Test", username="******")
        user.set_password("123")
        movie = Movie(title="Test Movie Title", year="2019")
        db.session.add_all([user, movie])
        db.session.commit()

        self.client = app.test_client()
        self.runner = app.test_cli_runner()
예제 #24
0
def register():
    if request.method == 'POST':  # 判断是否是 POST 请求
        try:
            form = UserForm(formdata=request.form)
            if not form.validate():
                flash('Invalid input!', category="danger")
                return render_template('register.html', form=form)

            email = form.email.data
            captcha = form.captcha.data
            password = form.password.data
            password_valid = form.password_valid.data

            mc_captcha = mc.get(email)
            logger.info(mc_captcha)
            if mc_captcha is None:
                flash(
                    u'Wrong captcha or captcha has been expired, please resend!',
                    category="danger")
                return render_template('register.html', form=form)
            elif mc_captcha != captcha:
                flash(u'Wrong captcha!', category="danger")
                return render_template('register.html', form=form)

            if not (len(email) <= 50 and 8 <= len(password) <= 20):
                flash('Invalid input length!', category="warning")
                return render_template('register.html', form=form)

            if password != password_valid:
                flash('Password is inconsistent!', category="danger")
                return render_template('register.html', form=form)

            user = User.query.get(email)
            if user is not None:
                flash('Email exists.', category="danger")
                return render_template('register.html', form=form)

            user = User(email=email)
            user.set_password(password)
            db.session.add(user)
            db.session.commit()

            flash('Register success.', category="success")
            return redirect(url_for('index'))

        except Exception:
            logger.exception('Faild to Register.')
            flash('Get a Exception.', category="danger")

    return render_template('register.html', form=UserForm())
예제 #25
0
    def setUp(self):
        app.config.update(TESTING=True,
                          SQLALCHEMY_DATABASE_URI='sqlite:///:memory:')
        # 创建数据库
        db.create_all()
        # 创建测试数据, 一个用户, 一个电影条目
        user = User(name='Test', username='******')  # 新建用户
        user.set_password('123')  # 设置密码
        movie = Movie(title='Test Movie Title', year='2020')  # 创建一条电影记录
        db.session.add_all([user, movie])  # add_all方法一次性传入多个模型类实例,以列表传入
        db.session.commit()

        self.client = app.test_client()  # 创建测试客户端
        self.runner = app.test_cli_runner()
예제 #26
0
def admin(username, password):
    user = User.query.first()
    if user is not None:
        click.echo("update user..")
        user.name = "admin"
        user.username = username
        user.set_password(password)
    else:
        click.echo("creating user..")
        user = User(username=username, name="admin")
        user.set_password(password)
        DB.session.add(user)
    db.session.commit()
    click.echo("done..")
예제 #27
0
def admin(username, password):
    user = User.query.first()
    if user is not None:
        click.echo('Updating user...')
        user.username = username
        user.set_password(password)  # 设置密码
    else:
        click.echo('Creating user...')
        user = User(username=username, name='Admin')
        user.set_password(password)  # 设置密码
        db.session.add(user)

    db.session.commit()  # 提交数据库会话
    click.echo('Done.')
예제 #28
0
def admin(username, password):
    db.create_all()
    user = User.query.first()
    if user is not None:
        click.echo('Updating user...')
        user.username = username
        user.set_password(password)
    else:
        click.echo('Creating user...')
        user = User(name='Tom Li', username=username)
        user.set_password(password)
        db.session.add(user)
    db.session.commit()
    click.echo('Done.')
예제 #29
0
def admin(username,password):
    db.create_all()
    user = User.query.first()
    if user is not None:
        click.echo('更新用户')
        user.username = username
        user.set_password(password)
    else:
        click.echo('创建用户')
        user = User(username=username,name="Admin")
        user.set_password(password)
        db.session.add(user)
    
    db.session.commit()
    click.echo('创建管理员账号完成')
예제 #30
0
def admin(username, password):
    """create user"""
    db.create_all()
    user = User.query.first()
    if user is not None:
        click.echo('Updating user...')
        user.username = username
        user.set_password(password)  # 设置密码
    else:
        click.echo('Creating user')
        user = User(username=username, name="Admin")
        user.set_password(password)
        db.session.add(user)
    db.session.commit()
    click.echo('Done')