from sqlalchemy import Column, BigInteger, Integer, String, ForeignKey, DateTime, JSON, Boolean from sqlalchemy.orm import relationship from .base import AlchemyBase from datetime import datetime class UserActivity(AlchemyBase): __tablename__ = 'users_activity' id = Column(Integer, autoincrement=True, primary_key=True) type = Column(String(64), nullable=False) meta = Column(JSON, nullable=False, default=dict) user_id = Column(Integer, ForeignKey('users.id'), nullable=True) user_ip = Column(String(64), nullable=True) created = Column(DateTime, nullable=False, default=datetime.utcnow) user = relationship('User', uselist=False, foreign_keys=[user_id])