Ejemplo n.º 1
0
class User(db.Model, UserMixin):
    """User Model"""
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(50), nullable=False)
    password = db.Column(db.String(50), nullable=False)
    shopping_list_items = db.relationship(
        "GroceryItem",
        secondary="shopping_list_table",
        back_populates="user_shopping_list",
    )

    shopping_list_table = db.Table(
        "shopping_list_table",
        db.Column("grocery_item", db.Integer,
                  db.ForeignKey("grocery_item.id")),
        db.Column("user", db.Integer, db.ForeignKey("user.id")),
    )
Ejemplo n.º 2
0

class GroceryItem(db.Model):
    """Grocery Item model."""
    __tablename__ = 'groceryitem'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(80), nullable=False)
    price = db.Column(db.Float(precision=2), nullable=False)
    category = db.Column(db.Enum(ItemCategory), default=ItemCategory.OTHER)
    photo_url = db.Column(URLType)
    store_id = db.Column(db.Integer,
                         db.ForeignKey('grocery_store.id'),
                         nullable=False)
    store = db.relationship('GroceryStore', back_populates='items')
    created_by_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    created_by = db.relationship('User')
    shopping_list_user = db.relationship('User',
                                         secondary='shopping_list',
                                         back_populates='shopping_list_items')

    def __repr__(self):
        return f'<Item: {self.name}>'

    def __str__(self):
        return f'<Item: {self.name}>'


shopping_list_table = db.Table(
    'shopping_list',
    db.Column('groceryitem_id', db.Integer, db.ForeignKey('groceryitem.id')),
    db.Column('user_id', db.Integer, db.ForeignKey('user.id')))
Ejemplo n.º 3
0
    users_cart = db.relationship('User',
                                 secondary='shopping_cart',
                                 back_populates='cart_items')

    def __str__(self):
        return f'<Item: {self.name}>'

    def __repr__(self):
        return f'<Item: {self.name}>'


class User(UserMixin, db.Model):
    """Grocery Store model."""
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(50), nullable=False)
    password = db.Column(db.String(50), nullable=False)
    cart_items = db.relationship('GroceryItem',
                                 secondary='shopping_cart',
                                 back_populates='users_cart')

    def __str__(self):
        return f'{self.username}'

    def __repr__(self):
        return f'{self.username}'


shopping_cart = db.Table(
    'shopping_cart',
    db.Column('item_id', db.Integer, db.ForeignKey('grocery_item.id')),
    db.Column('user_id', db.Integer, db.ForeignKey('user.id')))
Ejemplo n.º 4
0
    photo_url = db.Column(URLType)
    store_id = db.Column(
        db.Integer, db.ForeignKey('grocery_store.id'), nullable=False)
    store = db.relationship('GroceryStore', back_populates='items')
    created_by_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    created_by = db.relationship('User')
    shopping_lists = db.relationship(
        "User",
        secondary="shopping_list",
        back_populates="shopping_list_items"
    )


class User(db.Model, UserMixin):
    """User model."""
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(42), nullable=False)
    password = db.Column(db.String(80), nullable=False)
    shopping_list_items = db.relationship(
        "GroceryItem",
        secondary="shopping_list",
        back_populates="shopping_lists"
    )


shopping_list_table = db.Table(
    "shopping_list",
    db.Column("groceryitem_id", db.Integer, db.ForeignKey("grocery_item.id")),
    db.Column("user_id", db.Integer, db.ForeignKey("user.id"))
    )