Exemplo n.º 1
0
def rebuild():
    if config == 'development':
        with app.app_context():
            db.drop_all()
            db.create_all()
            Role.insert_roles()
            admin_me = User(email=app.config['FLASKR_ADMIN'],
                            username=app.config['MY_USERNAME'],
                            password=app.config['MY_PASSWORD'],
                            confirmed=True,
                            name=forgery_py.name.full_name(),
                            location=forgery_py.address.city(),
                            about_me=forgery_py.lorem_ipsum.sentences(10),
                            member_since=forgery_py.date.date(True,
                                                              min_delta=10))
            db.session.add(admin_me)
            ordinary_me = User(email=forgery_py.internet.email_address(),
                               username='******',
                               password='******',
                               confirmed=True,
                               name=forgery_py.name.full_name(),
                               location=forgery_py.address.city(),
                               about_me=forgery_py.lorem_ipsum.sentences(10),
                               member_since=forgery_py.date.date(True,
                                                                 min_delta=10))
            db.session.add(ordinary_me)
            db.session.commit()
            User.generate_fake(30)
            Post.generate_fake(500)
            Follow.generate_fake(500)
            Comment.generate_fake(500)
    else:
        print('Permission denied.')
Exemplo n.º 2
0
    def setUpClass(cls):
        try:
            cls.client = webdriver.Chrome('/usr/lib/chromium-browser/chromedriver')
        except:
            pass

        if cls.client:
            cls.app = create_app('testing')
            cls.app_context = cls.app.app_context()
            cls.app_context.push()

            import logging
            logger = logging.getLogger('werkzeug')
            logger.setLevel("ERROR")

            db.create_all()
            Role.insert_roles()
            User.generate_fake(10)
            Post.generate_fake(10)
            Comment.generate_fake(3, 5)
            Follow.generate_fake(3, 5)

            admin_role = Role.query.filter_by(name='Administrator').first()
            admin = User(role=admin_role, email='*****@*****.**', username='******',
                         password='******', confirmed=True)
            db.session.add(admin)
            db.session.commit()

            threading.Thread(target=cls.app.run).start()
Exemplo n.º 3
0
def reset():
    """重置数据库"""
    print('开始重置数据库...')
    print('清空数据库...')
    db.drop_all()
    print('创建数据库...')
    db.create_all()
    print('生成角色...')
    Role.insert_roles()
    print('生成我...')
    u = User(wow_faction='联盟', wow_race='暗夜精灵', wow_class='德鲁伊', username='******', email='*****@*****.**', password='******',
             confirmed=True, wow_title='野蛮角斗士', location='试炼之环', about_me='非著名猫德')
    u2 = User(wow_faction='部落', wow_race='兽人', wow_class='萨满祭司', username='******', email='*****@*****.**', password='******',
              role=Role.query.filter_by(name='官员').first(), confirmed=True, wow_title='神出鬼没的', location='奥格瑞玛',
              about_me='部落精神领袖,世界萨')
    u3 = User(username='******', email='*****@*****.**', password='******',
              role=Role.query.filter_by(name='官员').first(), confirmed=True, location='冬泉谷', about_me='这封信上写的什么?')
    db.session.add_all((u, u2, u3))
    db.session.commit()
    print('生成小弟...')
    User.generate_fake(100)
    u = User(wow_faction='部落', wow_race='血精灵', wow_class='法师', username='******', email='*****@*****.**',
             avatar='../static/wow/task/kaelthas0.png', password='******', location='奎尔萨拉斯', wow_title="迷失的",
             about_me="魔法,能量。我的人民陷入其中不能自拔,自从太阳之井被摧毁之后就是如此。欢迎来到未来!真遗憾,你们无法阻止什么,没有人可以阻止我了!Selama ashal'anore......")
    db.session.add(u)
    db.session.commit()
    User.generate_fake(100)
    print('生成文章...')
    Post.generate_fake(200)
    print('生成评论...')
    Comment.generate_fake(5, 15)
    print('生成关注...')
    Follow.generate_fake(5, 20)
    print('生成自关注...')
    User.add_self_follows()

    def generate_likes_and_collections():
        from random import randint
        for i in range(1000):
            u = User.query.get(randint(1, User.query.count()))
            u2 = User.query.get(randint(1, User.query.count()))
            if u.username == '凯尔萨斯之魂' or u2.username == '凯尔萨斯之魂':
                continue
            c = Comment.query.get(randint(1, Comment.query.count()))
            p = Post.query.get(randint(1, Post.query.count()))
            if c not in u.comments_like:
                u.comments_like.append(c)
                c.likes += 1
                db.session.add(u)
            if p not in u2.posts_collected:
                u2.posts_collected.append(p)
                p.collects += 1
                db.session.add(u2)
                db.session.add(p)
        db.session.commit()

    print('生成点赞和收藏...')
    generate_likes_and_collections()
    print('重置数据库完成,谢谢使用!')
    quit()
Exemplo n.º 4
0
def fake():
    from flask_migrate import upgrade
    from app.models import Role, User

    #User.generate_fake(30)
    #Post.generate_fake(200)
    #Comment.generate_fake(3000)
    Follow.generate_fake(1000)
def generate_fake():
    """Generate fake data"""
    Role.insert_roles()

    admin = User(email='*****@*****.**', password='******', confirmed=True, username='******')
    db.session.add(admin)
    db.session.commit()
    print('Inserting admin user: [email protected]')

    User.generate_fake()
    Post.generate_fake()
    Comment.generate_fake()
    Follow.generate_fake()
Exemplo n.º 6
0
def init_db():
    print 'drop all tables...',
    db.drop_all()
    print 'done\ncreate all tables...',
    db.create_all()
    print 'done\ninsert roles...',
    Role.insert_roles()
    print 'done\ninsert me...',
    generate_me()
    print 'done\ninsert users...',
    User.generate_fake()
    print 'done\ninsert follows...',
    Follow.generate_fake()
    print 'done\ninsert posts...',
    Post.generate_fake()
    print 'done\ninsert comments...',
    Comment.generate_fake()
    print 'done'
Exemplo n.º 7
0
def db_rebuild():
    """
    Destroy and rebuild database with fake data.
    """
    # destroy and rebuild tables
    db.reflect()
    db.drop_all()
    db.create_all()

    # insert roles as defined in model
    Role.insert_roles()

    # insert geos and usertypes as defined in model
    Geo.insert_geos()
    UserType.insert_user_types()

    # insert firm types/tiers as defined in model
    FirmType.insert_firm_types()
    FirmTier.insert_firm_tiers()

    # insert fake admin/test users
    from random import seed
    import forgery_py
    seed()
    test_user_1 = User(email='*****@*****.**',
                       username='******',
                       password='******',
                       confirmed=True,
                       name='Salim Hamed',
                       location='Seattle, WA',
                       about_me=forgery_py.lorem_ipsum.sentence(),
                       member_since=forgery_py.date.date(True))
    test_user_2 = User(email='*****@*****.**',
                       username='******',
                       password='******',
                       confirmed=True,
                       name='Bryan Davis',
                       location='Seattle, WA',
                       about_me=forgery_py.lorem_ipsum.sentence(),
                       member_since=forgery_py.date.date(True))
    test_user_3 = User(email='*****@*****.**',
                       username='******',
                       password='******',
                       confirmed=True,
                       name='Joe Smith',
                       location='San Francisco, CA',
                       about_me=forgery_py.lorem_ipsum.sentence(),
                       member_since=forgery_py.date.date(True))
    test_user_4 = User(email='*****@*****.**',
                       username='******',
                       password='******',
                       confirmed=True,
                       name='Bill Gates',
                       location='Bellevue, WA',
                       about_me=forgery_py.lorem_ipsum.sentence(),
                       member_since=forgery_py.date.date(True))
    admin_user = User(email='*****@*****.**',
                      username='******',
                      password='******',
                      confirmed=True,
                      name='Bill Gates',
                      location='Seattle, WA',
                      about_me=forgery_py.lorem_ipsum.sentence(),
                      member_since=forgery_py.date.date(True))
    db.session.add_all(
        [test_user_1, test_user_2, test_user_3, test_user_4, admin_user])
    db.session.commit()

    # insert fake user data
    User.generate_fake(60)

    # insert fake post data
    Post.generate_fake(400)

    # insert fake followers
    Follow.generate_fake(2000)

    # insert fake firms
    Firm.generate_fake(5000)

    # insert fake companies
    Company.generate_fake(10000)

    # insert fake relationships
    Relationship.generate_fake(60000)

    # print results
    inspector = db.inspect(db.engine)
    print('The following tables were created.')
    print('-' * 17)
    for table in inspector.get_table_names():
        print(table)
Exemplo n.º 8
0
def reset():
    """重置数据库"""
    print('开始重置数据库...')
    print('清空数据库...')
    db.drop_all()
    print('创建数据库...')
    db.create_all()
    print('生成角色...')
    Role.insert_roles()
    print('生成我...')
    u = User(wow_faction='联盟',
             wow_race='暗夜精灵',
             wow_class='德鲁伊',
             username='******',
             email='*****@*****.**',
             password='******',
             confirmed=True,
             name='野蛮角斗士',
             location='试炼之环',
             about_me='非著名猫德')
    u2 = User(wow_faction='部落',
              wow_race='兽人',
              wow_class='萨满祭司',
              username='******',
              email='*****@*****.**',
              password='******',
              role=Role.query.filter_by(name='官员').first(),
              confirmed=True,
              name='神出鬼没的',
              location='奥格瑞玛',
              about_me='部落精神领袖,世界萨')
    u3 = User(username='******',
              email='*****@*****.**',
              password='******',
              role=Role.query.filter_by(name='官员').first(),
              confirmed=True,
              name='游荡的',
              location='冬泉谷',
              about_me='这封信上写的什么?')
    db.session.add_all((u, u2, u3))
    db.session.commit()
    print('生成小弟...')
    User.generate_fake(200)
    print('生成文章...')
    Post.generate_fake(200)
    print('生成评论...')
    Comment.generate_fake(5, 15)
    print('生成关注...')
    Follow.generate_fake(5, 20)
    print('生成自关注...')
    User.add_self_follows()

    def generate_likes_and_collections():
        from random import randint
        for i in range(1000):
            u = User.query.get(randint(1, User.query.count()))
            u2 = User.query.get(randint(1, User.query.count()))
            c = Comment.query.get(randint(1, Comment.query.count()))
            p = Post.query.get(randint(1, Post.query.count()))
            if c not in u.comments_like:
                u.comments_like.append(c)
                c.likes += 1
                db.session.add(u)
            if p not in u2.posts_collected:
                u2.posts_collected.append(p)
                p.collects += 1
                db.session.add(u2)
                db.session.add(p)
        db.session.commit()

    print('生成点赞和收藏...')
    generate_likes_and_collections()
    print('重置数据库完成,谢谢使用!')
    quit()
Exemplo n.º 9
0
def db_rebuild():
    """
    Destroy and rebuild database with fake data.
    """
    # destroy and rebuild tables
    db.reflect()
    db.drop_all()
    db.create_all()

    # insert roles as defined in model
    Role.insert_roles()

    # insert geos and usertypes as defined in model
    Geo.insert_geos()
    UserType.insert_user_types()

    # insert firm types/tiers as defined in model
    FirmType.insert_firm_types()
    FirmTier.insert_firm_tiers()

    # insert fake admin/test users
    from random import seed
    import forgery_py
    seed()
    test_user_1 = User(
        email='*****@*****.**',
        username='******',
        password='******',
        confirmed=True,
        name='Salim Hamed',
        location='Seattle, WA',
        about_me=forgery_py.lorem_ipsum.sentence(),
        member_since=forgery_py.date.date(True)
    )
    test_user_2 = User(
        email='*****@*****.**',
        username='******',
        password='******',
        confirmed=True,
        name='Bryan Davis',
        location='Seattle, WA',
        about_me=forgery_py.lorem_ipsum.sentence(),
        member_since=forgery_py.date.date(True)
    )
    test_user_3 = User(
        email='*****@*****.**',
        username='******',
        password='******',
        confirmed=True,
        name='Joe Smith',
        location='San Francisco, CA',
        about_me=forgery_py.lorem_ipsum.sentence(),
        member_since=forgery_py.date.date(True)
    )
    test_user_4 = User(
        email='*****@*****.**',
        username='******',
        password='******',
        confirmed=True,
        name='Bill Gates',
        location='Bellevue, WA',
        about_me=forgery_py.lorem_ipsum.sentence(),
        member_since=forgery_py.date.date(True)
    )
    admin_user = User(
        email='*****@*****.**',
        username='******',
        password='******',
        confirmed=True,
        name='Bill Gates',
        location='Seattle, WA',
        about_me=forgery_py.lorem_ipsum.sentence(),
        member_since=forgery_py.date.date(True)
    )
    db.session.add_all([test_user_1, test_user_2, test_user_3, test_user_4,
                        admin_user])
    db.session.commit()

    # insert fake user data
    User.generate_fake(60)

    # insert fake post data
    Post.generate_fake(400)

    # insert fake followers
    Follow.generate_fake(2000)

    # insert fake firms
    Firm.generate_fake(5000)

    # insert fake companies
    Company.generate_fake(10000)

    # insert fake relationships
    Relationship.generate_fake(60000)

    # print results
    inspector = db.inspect(db.engine)
    print 'The following tables were created.'
    print '-'*17
    for table in inspector.get_table_names():
        print table