add custom dict() method for arcology.arroyo.Feed for export rendering
parent
c606952a0b
commit
0a6ebe6e27
|
@ -762,11 +762,14 @@ A page has any number of refs according to the file primary key:
|
|||
(vector file (format "%s:%s" type ref) node-id))))
|
||||
#+end_src
|
||||
|
||||
* Arcology Feeds
|
||||
* INPROGRESS Arcology Feeds
|
||||
:PROPERTIES:
|
||||
:ID: arcology/arroyo/feed
|
||||
:ROAM_ALIASES: arcology.arroyo.Feed
|
||||
:END:
|
||||
:LOGBOOK:
|
||||
- State "INPROGRESS" from [2023-01-24 Tue 23:33]
|
||||
:END:
|
||||
|
||||
#+NAME: arcology.arroyo.Feed
|
||||
#+begin_src python
|
||||
|
@ -792,6 +795,15 @@ class Feed(SQLModel, table=True):
|
|||
|
||||
def get_post_visibility(self):
|
||||
return parse_sexp(self.post_visibility)
|
||||
|
||||
def dict(self, **kwargs):
|
||||
return dict(
|
||||
key=self.get_key(),
|
||||
url=self.get_arcology_key().to_url(),
|
||||
title=self.get_title(),
|
||||
site=self.get_site(),
|
||||
visibility=self.get_post_visibility(),
|
||||
)
|
||||
#+end_src
|
||||
|
||||
A page has any number of feeds according to the file primary key:
|
||||
|
|
|
@ -206,6 +206,37 @@ class Keyword(SQLModel, table=True):
|
|||
return next(session.exec(q))
|
||||
except StopIteration:
|
||||
return None
|
||||
class Feed(SQLModel, table=True):
|
||||
__tablename__ = "arcology_feeds"
|
||||
file: str = Field(primary_key=True, foreign_key="arcology_pages.file")
|
||||
key: str = Field(primary_key=True, description="The routing key for the feed.")
|
||||
title: str = Field(description="Title of the page which the feed is embedded in")
|
||||
site: str = Field(description="Arcology Site which the feed resides on.")
|
||||
post_visibility: str = Field(description="Visibility of the feed's posts in feed2toot, etc")
|
||||
|
||||
def get_key(self):
|
||||
return parse_sexp(self.key)
|
||||
|
||||
def get_arcology_key(self):
|
||||
return ArcologyKey(self.get_key())
|
||||
|
||||
def get_title(self):
|
||||
return parse_sexp(self.title)
|
||||
|
||||
def get_site(self):
|
||||
return parse_sexp(self.site)
|
||||
|
||||
def get_post_visibility(self):
|
||||
return parse_sexp(self.post_visibility)
|
||||
|
||||
def dict(self, **kwargs):
|
||||
return dict(
|
||||
key=self.get_key(),
|
||||
url=self.get_arcology_key().to_url(),
|
||||
title=self.get_title(),
|
||||
site=self.get_site(),
|
||||
visibility=self.get_post_visibility(),
|
||||
)
|
||||
|
||||
from sqlmodel import create_engine
|
||||
from sqlalchemy import event
|
||||
|
|
Loading…
Reference in New Issue