Commit 454728d5ce66d7d5daff927f0c463a3685c162e8
1 parent
d6b9daca
Exists in
master
and in
4 other branches
Use sqlalchemy relationship
category is parent and label is child. easier to add categories and its labels
Showing
2 changed files
with
6 additions
and
3 deletions
Show diff stats
app/commands/commands.py
@@ -200,10 +200,10 @@ def feed_from_irap(csv_file_name): | @@ -200,10 +200,10 @@ def feed_from_irap(csv_file_name): | ||
200 | print("Adding category ", c) | 200 | print("Adding category ", c) |
201 | n_c = Category(name=c) | 201 | n_c = Category(name=c) |
202 | db.session.add(n_c) | 202 | db.session.add(n_c) |
203 | - db.session.commit() | 203 | + # db.session.commit() |
204 | for label in l: | 204 | for label in l: |
205 | - print("Adding label {} for id {}".format(label, n_c.id)) | ||
206 | - n_l = CategoryLabel(name=label, category_id=n_c.id) | 205 | + # print("Adding label {} for id {}".format(label, n_c.id)) |
206 | + n_l = CategoryLabel(name=label, category=n_c) | ||
207 | db.session.add(n_l) | 207 | db.session.add(n_l) |
208 | db.session.commit() | 208 | db.session.commit() |
209 | 209 |
app/models.py
1 | from flask_sqlalchemy import SQLAlchemy | 1 | from flask_sqlalchemy import SQLAlchemy |
2 | +from sqlalchemy.orm import relationship | ||
2 | 3 | ||
3 | db = SQLAlchemy() | 4 | db = SQLAlchemy() |
4 | 5 | ||
@@ -6,12 +7,14 @@ db = SQLAlchemy() | @@ -6,12 +7,14 @@ db = SQLAlchemy() | ||
6 | class Category(db.Model): | 7 | class Category(db.Model): |
7 | id = db.Column(db.Integer, primary_key=True) | 8 | id = db.Column(db.Integer, primary_key=True) |
8 | name = db.Column(db.String(32)) | 9 | name = db.Column(db.String(32)) |
10 | + labels = relationship("CategoryLabel", back_populates='category') | ||
9 | 11 | ||
10 | 12 | ||
11 | class CategoryLabel(db.Model): | 13 | class CategoryLabel(db.Model): |
12 | id = db.Column(db.Integer, primary_key=True) | 14 | id = db.Column(db.Integer, primary_key=True) |
13 | name = db.Column(db.String(32)) | 15 | name = db.Column(db.String(32)) |
14 | category_id = db.Column(db.Integer, db.ForeignKey('category.id')) | 16 | category_id = db.Column(db.Integer, db.ForeignKey('category.id')) |
17 | + category = relationship("Category", back_populates='labels') | ||
15 | 18 | ||
16 | 19 | ||
17 | class AgentBap(db.Model): | 20 | class AgentBap(db.Model): |