Advertisement
Guest User

Untitled

a guest
Jul 18th, 2019
107
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.83 KB | None | 0 0
  1. category_product = db.Table('category_product',
  2. db.Column('category_id',
  3. db.Integer,
  4. db.ForeignKey('category.id')),
  5. db.Column('product_id',
  6. db.Integer,
  7. db.ForeignKey('product.id')))
  8.  
  9.  
  10. class Product(db.Model):
  11. """ SQLAlchemy Product Model """
  12. id = db.Column(db.Integer, primary_key=True)
  13. sku = db.Column(db.String(10), unique=True, nullable=False)
  14. name = db.Column(db.String(80), nullable=False)
  15. categories = db.relationship('Category', secondary=category_product,
  16. backref=db.backref('categories',
  17. lazy='dynamic'))
  18.  
  19. def __init__(self, name):
  20. self.name = name
  21.  
  22. def __repr__(self):
  23. return '<Product {}>'.format(self.name)
  24.  
  25.  
  26. class Category(db.Model):
  27. """ SQLAlchemy Category Model """
  28. id = db.Column(db.Integer, primary_key=True)
  29. name = db.Column(db.String(80), nullable=False)
  30. products = db.relationship('Product', secondary=category_product,
  31. backref=db.backref('products', lazy='dynamic'))
  32.  
  33. def __init__(self, name):
  34. self.name = name
  35.  
  36. def __repr__(self):
  37. return '<Category {}>'.format(self.name)
  38.  
  39. products = db.session.query(Category).
  40. filter_by(id=category_id).
  41. products.
  42. all()
  43.  
  44. AttributeError: 'Query' object has no attribute 'products'
  45.  
  46. products = db.session.query(Category).
  47. filter_by(id=category_id).
  48. products.
  49. all()
  50.  
  51. all_products = Category.query.
  52. filter_by(id=category_id).
  53. first().
  54. products
  55.  
  56. product = Product.query.filter(Category.products.any(id=cat_id)).all()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement