making fake data to insert

This commit is contained in:
Yisroel Baum 2024-09-16 15:34:31 +03:00
parent 71d1910988
commit 2ca4812480

View file

@ -6,83 +6,85 @@ from dateutil.parser import parse
import time import time
import json import json
from werkzeug.security import generate_password_hash from werkzeug.security import generate_password_hash
import random
def engineer():
engine = create_engine('sqlite:////home/yisroel2/Desktop/Pilzno/instance/site.db')
# engine = create_engine('sqlite:///C:/Users/Lenovo/Desktop/Pilzno/instance/site.db')
metadata_obj = MetaData()
metadata_obj.reflect(bind=engine)
return engine, metadata_obj
def insert_users(): def insert_users():
engine = create_engine('sqlite:///C:/Users/Lenovo/Desktop/Pilzno/instance/site.db') users = [
metadata_obj = MetaData() ['Yisroel', 'Baum', 'yisroel.d.baum@gmail.com', generate_password_hash('12'), 'Admin'],
metadata_obj.reflect(bind=engine) ['Yoni', 'Gerzi', 'yoni@gerzi.com', generate_password_hash('12'), 'User'],
['Shmuli', 'Modes', 'shmuli@modes.com', generate_password_hash('12'), 'User'],
['Emma', 'Baum', 'emma@baum.com', generate_password_hash('12'), 'User'],
['Yisroel', 'Factor', 'yisroel@factor.com', generate_password_hash('12'), 'User'],
['Yaakov', 'Frager', 'yaakov@frager.com', generate_password_hash('12'), 'User'],
['Michael', 'Oshman', 'michael@oshman.com', generate_password_hash('12'), 'User'],
['Shalom', 'Goldberg', 'shalom@goldberg.com', generate_password_hash('12'), 'User'],
['Daniel', 'Caller', 'daniel@caller.com', generate_password_hash('12', 'User')],
]
engine, metadata_obj = engineer()
user_table = Table("user", metadata_obj, autoload_with=engine) user_table = Table("user", metadata_obj, autoload_with=engine)
with engine.connect() as conn: with engine.connect() as conn:
conn.execute(user_table.insert().values( for user in users:
first_name = "Yisroel", conn.execute(user_table.insert().values(
last_name = "Baum", first_name = user[0],
email = "yisroel.d.baum@gmail.com", last_name = user[1],
password = generate_password_hash('12'), email = user[2],
user_type = "User" password = user[3],
)) user_type = user[4]
conn.execute(user_table.insert().values( ))
first_name = "Yoni",
last_name = "Gerzi",
email = "yoni@gerzi.com",
password = generate_password_hash('12'),
user_type = "User"
))
conn.commit() conn.commit()
def insert_donations(): def insert_donations():
engine = create_engine('sqlite:///C:/Users/Lenovo/Desktop/Pilzno/instance/site.db') engine, metadata_obj = engineer()
metadata_obj = MetaData()
metadata_obj.reflect(bind=engine)
user_table = Table("user", metadata_obj, autoload_with=engine)
donation_table = Table("donation", metadata_obj, autoload_with=engine) donation_table = Table("donation", metadata_obj, autoload_with=engine)
campaign_table = Table("campaign", metadata_obj, autoload_with=engine)
currency_types = ['shekel', 'dollar']
with engine.connect() as conn: with engine.connect() as conn:
sruli = conn.execute(select(user_table).where(user_table.c.id == 1)).first() for _ in range(100):
yoni = conn.execute(select(user_table).where(user_table.c.id == 2)).first() conn.execute(donation_table.insert().values(
currency_type = currency_types[random.randint(1,2)],
campaign_one = conn.execute(select(campaign_table).where(campaign_table.c.id == 2)).first() amount = random.randint(1,200),
campaign_id=1,
conn.execute(donation_table.insert().values( user_id=1
currency_type = "shekel", ))
amount = 50,
campaign_id=campaign_one.id,
user_id=sruli.id
))
conn.commit() conn.commit()
def insert_campaigns(): def insert_campaigns():
engine = create_engine('sqlite:///C:/Users/Lenovo/Desktop/Pilzno/instance/site.db') engine, metadata_obj = engineer()
metadata_obj = MetaData()
metadata_obj.reflect(bind=engine)
campaign_table = Table("campaign", metadata_obj, autoload_with=engine) campaign_table = Table("campaign", metadata_obj, autoload_with=engine)
campaign_titles = ['general campaign', 'yomim noraim 2024', 'pesach kibbudim 2024', 'RH kibbudim 2024']
with engine.connect() as conn: with engine.connect() as conn:
conn.execute(campaign_table.insert().values(title="general campaign")) for title in campaign_titles:
conn.execute(campaign_table.insert().values(title="special campaign")) conn.execute(campaign_table.insert().values(title=title))
conn.commit() conn.commit()
def test_selections(): def test_selections():
engine = create_engine('sqlite:///C:/Users/Lenovo/Desktop/Pilzno/instance/site.db') engine, metadata_obj = engineer()
metadata_obj = MetaData()
metadata_obj.reflect(bind=engine)
user_table = Table("user", metadata_obj, autoload_with=engine) user_table = Table("user", metadata_obj, autoload_with=engine)
donation_table = Table("donation", metadata_obj, autoload_with=engine) donation_table = Table("donation", metadata_obj, autoload_with=engine)
campaign_table = Table("campaign", metadata_obj, autoload_with=engine) campaign_table = Table("campaign", metadata_obj, autoload_with=engine)
with engine.connect() as conn: for x in range(10):
campaign_one = conn.execute(select(campaign_table).where(campaign_table.c.id==1)).first() print(random.randrange(1,4))
donation_one = conn.execute(select(donation_table).where(donation_table.c.id==1)).first() # with engine.connect() as conn:
user_one = conn.execute(select(user_table).where(user_table.c.id==1)).first() # campaign_one = conn.execute(select(campaign_table).where(campaign_table.c.id==1)).first()
print(user_one.donations) # donation_one = conn.execute(select(donation_table).where(donation_table.c.id==1)).first()
# user_one = conn.execute(select(user_table).where(user_table.c.id==1)).first()
# print(user_one)
def delete_all(): def delete_all():
engine = create_engine('sqlite:///C:/Users/Lenovo/Desktop/Pilzno/instance/site.db') engine, metadata_obj = engineer()
metadata_obj = MetaData()
metadata_obj.reflect(bind=engine)
user_table = Table("user", metadata_obj, autoload_with=engine) user_table = Table("user", metadata_obj, autoload_with=engine)
donation_table = Table("donation", metadata_obj, autoload_with=engine) donation_table = Table("donation", metadata_obj, autoload_with=engine)
campaign_table = Table("campaign", metadata_obj, autoload_with=engine) campaign_table = Table("campaign", metadata_obj, autoload_with=engine)
@ -93,5 +95,10 @@ def delete_all():
conn.execute(delete(donation_table)) conn.execute(delete(donation_table))
conn.commit() conn.commit()
def insert_all():
insert_users()
insert_campaigns()
insert_donations()
if __name__ == '__main__': if __name__ == '__main__':
test_selections() test_selections()