2020-06-18 02:55:56 +00:00
|
|
|
from databases import Database
|
2020-06-18 04:26:24 +00:00
|
|
|
from ormantic import Integer, ForeignKey, Model, Text
|
2020-06-18 02:55:56 +00:00
|
|
|
from sqlalchemy import create_engine, MetaData
|
|
|
|
|
|
|
|
|
|
|
|
database = Database('sqlite:///pizzatool.sqlite')
|
|
|
|
metadata = MetaData()
|
|
|
|
|
|
|
|
|
|
|
|
class Ingredient(Model):
|
|
|
|
id: Integer(primary_key=True) = None
|
|
|
|
name: Text()
|
|
|
|
|
|
|
|
class Mapping:
|
2020-06-18 21:54:16 +00:00
|
|
|
table_name = 'ingredient'
|
2020-06-18 02:55:56 +00:00
|
|
|
metadata = metadata
|
|
|
|
database = database
|
|
|
|
|
|
|
|
|
2020-06-18 04:26:24 +00:00
|
|
|
class Pizza(Model):
|
|
|
|
id: Integer(primary_key=True) = None
|
|
|
|
name: Text()
|
|
|
|
|
|
|
|
class Mapping:
|
2020-06-18 21:54:16 +00:00
|
|
|
table_name = 'pizza'
|
2020-06-18 04:26:24 +00:00
|
|
|
metadata = metadata
|
|
|
|
database = database
|
|
|
|
|
|
|
|
|
|
|
|
class PizzaIngredient(Model):
|
|
|
|
id: Integer(primary_key=True) = None
|
|
|
|
pizza: ForeignKey(Pizza)
|
|
|
|
ingredient: ForeignKey(Ingredient)
|
|
|
|
|
|
|
|
class Mapping:
|
2020-06-18 21:54:16 +00:00
|
|
|
table_name = 'pizzaingredient'
|
2020-06-18 04:26:24 +00:00
|
|
|
metadata = metadata
|
|
|
|
database = database
|
|
|
|
|
|
|
|
|
2020-06-18 02:55:56 +00:00
|
|
|
engine = create_engine(str(database.url), echo=True)
|
|
|
|
metadata.create_all(engine)
|