|
@@ -43,7 +43,10 @@ class Link(Model):
|
|
# is the field entirely private?
|
|
# is the field entirely private?
|
|
private = peewee.BooleanField()
|
|
private = peewee.BooleanField()
|
|
# owned by
|
|
# owned by
|
|
- user = peewee.ForeignKeyField(User, backref="all_links")
|
|
|
|
|
|
+ user = peewee.ForeignKeyField(User, backref="links")
|
|
|
|
+
|
|
|
|
+ def link_url(self) -> str:
|
|
|
|
+ return f"/u/{self.user.name}/l/{self.id}"
|
|
|
|
|
|
@staticmethod
|
|
@staticmethod
|
|
def from_request(user: User, link: r.Link) -> "Link":
|
|
def from_request(user: User, link: r.Link) -> "Link":
|
|
@@ -56,7 +59,7 @@ class Link(Model):
|
|
user=user,
|
|
user=user,
|
|
)
|
|
)
|
|
for tag_name in link.tags:
|
|
for tag_name in link.tags:
|
|
- t = Tag.find_tag(tag_name)
|
|
|
|
|
|
+ t = Tag.find_tag(user, tag_name)
|
|
HasTag.create(
|
|
HasTag.create(
|
|
link=l, tag=t,
|
|
link=l, tag=t,
|
|
)
|
|
)
|
|
@@ -72,6 +75,9 @@ class Tag(Model):
|
|
parent = peewee.ForeignKeyField("self", null=True, backref="children")
|
|
parent = peewee.ForeignKeyField("self", null=True, backref="children")
|
|
user = peewee.ForeignKeyField(User, backref="tags")
|
|
user = peewee.ForeignKeyField(User, backref="tags")
|
|
|
|
|
|
|
|
+ def url(self) -> str:
|
|
|
|
+ return f"/u/{self.user.name}/t/{self.name}"
|
|
|
|
+
|
|
@staticmethod
|
|
@staticmethod
|
|
def find_tag(user: User, tag_name: str):
|
|
def find_tag(user: User, tag_name: str):
|
|
if (t := Tag.get_or_none(name=tag_name, user=user)) :
|
|
if (t := Tag.get_or_none(name=tag_name, user=user)) :
|