diff --git a/app/models.py b/app/models.py index bdb596ba..a95d026a 100644 --- a/app/models.py +++ b/app/models.py @@ -710,6 +710,7 @@ class User(UserMixin, db.Model): cover = db.relationship('File', lazy='joined', foreign_keys=[cover_id], single_parent=True, cascade="all, delete-orphan") instance = db.relationship('Instance', lazy='joined', foreign_keys=[instance_id]) conversations = db.relationship('Conversation', lazy='dynamic', secondary=conversation_member, backref=db.backref('members', lazy='joined')) + user_notes = db.relationship('UserNote', lazy='dynamic', foreign_keys="UserNote.target_id") ap_id = db.Column(db.String(255), index=True) # e.g. username@server ap_profile_id = db.Column(db.String(255), index=True, unique=True) # e.g. https://server/u/username @@ -1079,8 +1080,9 @@ class User(UserMixin, db.Model): def has_read_post(self, post): return self.read_post.filter(read_posts.c.read_post_id == post.id).count() > 0 + @cache.memoize(timeout=500) def get_note(self, by_user): - user_note = UserNote.query.filter(UserNote.target_id == self.id, UserNote.user_id == by_user.id).first() + user_note = self.user_notes.filter(UserNote.target_id == self.id, UserNote.user_id == by_user.id).first() if user_note: return user_note.body else: diff --git a/app/templates/base.html b/app/templates/base.html index dff76458..320d8bd5 100644 --- a/app/templates/base.html +++ b/app/templates/base.html @@ -30,7 +30,7 @@ {% if current_user.is_authenticated -%} {% set user_note = user.get_note(current_user) %} {% if user_note -%} - [{{ user_note | truncate(12, True) }}] + [{{ user_note | truncate(12, True) }}] {% endif -%} {% endif -%} {% endif -%} diff --git a/app/templates/user/edit_note.html b/app/templates/user/edit_note.html index 6ab886a6..5f003e0e 100644 --- a/app/templates/user/edit_note.html +++ b/app/templates/user/edit_note.html @@ -12,9 +12,8 @@