Skip to content

Commit 554cfc1

Browse files
hellcpjwise
authored andcommitted
Track when the like was added
1 parent 72dc2fe commit 554cfc1

File tree

3 files changed

+33
-1
lines changed

3 files changed

+33
-1
lines changed

appstore/dev_portal_api.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,7 @@
44
from werkzeug.exceptions import BadRequest
55
from sqlalchemy.exc import IntegrityError
66
from sqlalchemy.orm.exc import NoResultFound
7+
from datetime import datetime
78

89
from .utils import authed_request, demand_authed_request, get_uid
910
from .models import LockerEntry, UserLike, db, App, Developer, UserFlag
@@ -121,7 +122,7 @@ def add_heart(app_id):
121122
uid = get_uid()
122123
try:
123124
app = App.query.filter_by(id=app_id).one()
124-
like = UserLike(user_id=uid, app_id=app_id)
125+
like = UserLike(user_id=uid, app_id=app_id, created_at=datetime.now())
125126
db.session.add(like)
126127
App.query.filter_by(id=app_id).update({'hearts': App.hearts + 1})
127128
db.session.commit()

appstore/models.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -166,6 +166,7 @@ class UserLike(db.Model):
166166
__tablename__ = "user_likes"
167167
user_id = db.Column(db.Integer(), primary_key=True, index=True)
168168
app_id = db.Column(db.String(24), db.ForeignKey('apps.id', ondelete='cascade'), primary_key=True, index=True)
169+
created_at = db.Column(db.DateTime, index=True)
169170
app = db.relationship('App')
170171
db.Index('user_like_app_user_index', UserLike.app_id, UserLike.user_id, unique=True)
171172

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
"""Add creation time to user_likes
2+
3+
Revision ID: 705e61509d00
4+
Revises: ec9b0b6d8795
5+
Create Date: 2025-11-12 00:55:51.383857
6+
7+
"""
8+
from alembic import op
9+
import sqlalchemy as sa
10+
11+
12+
# revision identifiers, used by Alembic.
13+
revision = '705e61509d00'
14+
down_revision = 'ec9b0b6d8795'
15+
branch_labels = None
16+
depends_on = None
17+
18+
19+
def upgrade():
20+
# ### commands auto generated by Alembic - please adjust! ###
21+
op.add_column('user_likes', sa.Column('created_at', sa.DateTime(), nullable=True))
22+
op.create_index(op.f('ix_user_likes_created_at'), 'user_likes', ['created_at'], unique=False)
23+
# ### end Alembic commands ###
24+
25+
26+
def downgrade():
27+
# ### commands auto generated by Alembic - please adjust! ###
28+
op.drop_index(op.f('ix_user_likes_created_at'), table_name='user_likes')
29+
op.drop_column('user_likes', 'created_at')
30+
# ### end Alembic commands ###

0 commit comments

Comments
 (0)