Exemple #1
0
def seed_db():
    from models.Item import Item
    from models.User import User
    from models.Order import Order
    from models.OrderShipping import OrderShipping
    from main import bcrypt
    from faker import Faker
    import random

    faker = Faker()

    for i in range(3):
        user = User()
        user.email = f"test{i}@test.com"
        user.password = bcrypt.generate_password_hash("123456").decode("utf-8")
        db.session.add(user)

    admin = User()
    admin.email = "*****@*****.**"
    admin.password = bcrypt.generate_password_hash("123456").decode("utf-8")
    admin.admin = True
    db.session.add(admin)

    db.session.commit()

    for i in range(10):
        item = Item()
        item.name = faker.currency_name()
        item.description = faker.paragraph(nb_sentences=3)
        item.price = 53.25
        db.session.add(item)
    
    db.session.commit()

    ordershipping = []

    for i in range(5):
        shipping = OrderShipping()
        shipping.first_name = faker.first_name()
        shipping.last_name = faker.last_name()
        shipping.address = faker.street_address()
        shipping.state = faker.city()
        shipping.zip_code = faker.postcode()
        db.session.add(shipping)
        ordershipping.append(shipping)
    
    db.session.commit()

    orders = []

    for i in range(5):
        order = Order()
        order.shipping_id = random.choice(ordershipping).id
        db.session.add(order)
        orders.append(order)

    db.session.commit()

    print("Tables seeded.")
Exemple #2
0
def seed_db():
    from main import bcrypt
    from models.Menu import Menu
    from models.User import User
    from models.Order import Order
    from faker import Faker
    import random

    faker = Faker()
    users = []
    menus = []

    for i in range(10):
        user = User()
        user.email = faker.email()
        user.password = bcrypt.generate_password_hash("123456").decode("utf-8")
        user.first_name = faker.first_name()
        user.last_name = faker.last_name()
        user.admin = faker.boolean(chance_of_getting_true=50)

        users.append(user)

        db.session.add(user)
        print(f"{i} users created")

    db.session.commit()

    for i in range(10):
        menu = Menu()
        menu.title = faker.color_name()
        menu.price = faker.random_number(digits=2)
        menu.vegetarian = faker.boolean(chance_of_getting_true=50)
        
        menus.append(menu)

        db.session.add(menu)
        print(f"{i} book record(s) created")

    db.session.commit()

    for i in range(10):
        order = Order()
        order.menu_id = random.choice(menus).id
        order.user_id = random.choice(users).id
        order.test = "test"
        
        db.session.add(order)
        print(f"{i} order created")

    db.session.commit()
    print("Tables seeded")
Exemple #3
0
def auth_register():
    user_fields = user_schema.load(request.json)

    user = User.query.filter_by(email=user_fields["email"]).first()

    if user:
        return abort(400, description="Email already registered.")

    user = User()
    user.email = user_fields["email"]
    user.password = bcrypt.generate_password_hash(
        user_fields["password"]).decode("utf-8")
    user.admin = user_fields["admin"]

    db.session.add(user)
    db.session.commit()

    return jsonify(user_schema.dump(user))