Commit fed90dbd6d32b3ebc074d08d4d2301000776008c
1 parent
9b43874a
Exists in
master
and in
4 other branches
Rewrite list intersection
Showing
1 changed file
with
10 additions
and
4 deletions
Show diff stats
app/db_mgr.py
... | ... | @@ -43,13 +43,19 @@ def projects(): |
43 | 43 | # Build the table row by row |
44 | 44 | for _pc in projects_charges: |
45 | 45 | p_id = _pc[0] |
46 | - p = Project.query.get(int(p_id)) | |
46 | + project = Project.query.get(int(p_id)) | |
47 | 47 | # adding 2 first columns: id, name |
48 | - project_row = [p.id, p.name] | |
48 | + project_row = [project.id, project.name] | |
49 | 49 | # then labels, many for each category |
50 | 50 | for category in categories: |
51 | - # we build the labels.name list of the intersection of that category labels with projects labels | |
52 | - labels = [_cl.label.name for _cl in category.labels if _cl.label in [_pl.label for _pl in p.labels]] | |
51 | + # we build the labels.name list of the intersection of current category's labels with project's labels | |
52 | + # Comprehensive shortcut is: | |
53 | + # labels = [_cl.label.name for _cl in category.labels if _cl.label in [_pl.label for _pl in project.labels]] | |
54 | + # | |
55 | + category_labels = [_cl.label for _cl in category.labels] | |
56 | + project_labels = [_pl.label for _pl in project.labels] | |
57 | + intersection_labels = list(set.intersection(set(project_labels), set(category_labels))) | |
58 | + labels = [label.name for label in intersection_labels] | |
53 | 59 | project_row.append(labels) |
54 | 60 | # then add total charge |
55 | 61 | project_row.append(_pc[1]) | ... | ... |