Added admin log view

This commit is contained in:
Adrià Casajús 2022-03-10 17:32:35 +01:00
parent bc82bab1eb
commit 98c942d84a
No known key found for this signature in database
GPG Key ID: F0033226A5AFC9B9
4 changed files with 14 additions and 3 deletions

View File

@ -314,3 +314,11 @@ class PayoutAdmin(SLModelView):
can_edit = True
can_create = True
can_delete = True
class AdminAuditLogAdmin(SLModelView):
column_searchable_list = ["admin_user_id"]
column_filters = ["admin_user_id"]
can_edit = False
can_create = False
can_delete = False

View File

@ -2881,8 +2881,8 @@ class AdminAuditLog(Base):
admin_user_id = sa.Column(sa.ForeignKey(User.id), nullable=False)
action = sa.Column(sa.Integer, nullable=False)
model = sa.Column(sa.Text, nullable=False)
model_id = sa.Column(sa.Integer, nullable=False)
data = sa.Column(sa.JSON, nullable=False)
model_id = sa.Column(sa.Integer, nullable=True)
data = sa.Column(sa.JSON, nullable=True)
ACTION_CREATE_OBJECT = 1
ACTION_UPDATE_OBJECT = 2

View File

@ -25,7 +25,7 @@ def upgrade():
sa.Column("admin_user_id", sa.Integer, nullable=False),
sa.Column("action", sa.Integer, nullable=False),
sa.Column("model", sa.String(length=256), nullable=False),
sa.Column("model_id", sa.Integer, nullable=False),
sa.Column("model_id", sa.Integer, nullable=True),
sa.Column("data", postgresql.JSONB(astext_type=sa.Text()), nullable=False),
sa.ForeignKeyConstraint(['admin_user_id'], ['users.id'], ondelete='cascade'),
sa.PrimaryKeyConstraint("id"),

View File

@ -40,6 +40,7 @@ from app.admin_model import (
PayoutAdmin,
CouponAdmin,
CustomDomainAdmin,
AdminAuditLogAdmin,
)
from app.api.base import api_bp
from app.auth.base import auth_bp
@ -96,6 +97,7 @@ from app.models import (
ManualSubscription,
Payout,
Coupon,
AdminAuditLog,
)
from app.monitor.base import monitor_bp
from app.oauth.base import oauth_bp
@ -700,6 +702,7 @@ def init_admin(app):
admin.add_view(CustomDomainAdmin(CustomDomain, Session))
admin.add_view(ReferralAdmin(Referral, Session))
admin.add_view(PayoutAdmin(Payout, Session))
admin.add_view(AdminAuditLogAdmin(AdminAuditLog, Session))
def register_custom_commands(app):