diff options
| author | Jules Laplace <julescarbon@gmail.com> | 2020-06-07 16:51:27 +0200 |
|---|---|---|
| committer | Jules Laplace <julescarbon@gmail.com> | 2020-06-07 16:51:27 +0200 |
| commit | 9041401b73f93228cc9b5183a9ef30e5f7f171a6 (patch) | |
| tree | aad1d009a537aaab4bd3f923718b5d1e030cf356 /cli | |
| parent | 3550f0ee37ee12179404f721b5a55be37992603f (diff) | |
drawing graphs with backlinks
Diffstat (limited to 'cli')
| -rw-r--r-- | cli/app/sql/models/graph.py | 2 | ||||
| -rw-r--r-- | cli/app/sql/models/page.py | 6 |
2 files changed, 7 insertions, 1 deletions
diff --git a/cli/app/sql/models/graph.py b/cli/app/sql/models/graph.py index 88a15ef..fdea32a 100644 --- a/cli/app/sql/models/graph.py +++ b/cli/app/sql/models/graph.py @@ -37,7 +37,7 @@ class Graph(Base): def toFullJSON(self): data = self.toJSON() - data['pages'] = [ page.toJSON() for page in self.pages ] + data['pages'] = [ page.toLinkJSON() for page in self.pages ] return data class GraphForm(ModelForm): diff --git a/cli/app/sql/models/page.py b/cli/app/sql/models/page.py index 960ffd7..4ca758d 100644 --- a/cli/app/sql/models/page.py +++ b/cli/app/sql/models/page.py @@ -23,6 +23,7 @@ class Page(Base): updated_at = Column(UtcDateTime(), onupdate=utcnow()) tiles = relationship("Tile", foreign_keys="Tile.page_id", lazy='dynamic', order_by="asc(Tile.sort_order)") + backlinks = relationship("Tile", foreign_keys="Tile.target_page_id", lazy='dynamic') def toJSON(self): return { @@ -37,6 +38,11 @@ class Page(Base): 'updated_at': self.updated_at, } + def toLinkJSON(self): + data = self.toJSON() + data['backlinks'] = [ tile.toJSON() for tile in self.backlinks ] + return data + def toFullJSON(self): data = self.toJSON() data['tiles'] = [ tile.toJSON() for tile in self.tiles ] |
