典型的 flask的 用户模型,使用 flask shell 添加数据

您提供的 AdminModel 是一个使用 SQLAlchemy 定义的 Flask 模型,用于管理管理员用户的数据。以下是对该模型的详细分析以及如何通过 Flask 的 shell 界面添加数据的步骤。

1. 模型分析

1.1 表结构
  • 表名

    • admin(在 SCHEMA 模式下的 admin 表)。
  • 字段

    • admin_id:主键,自增类型 (BigInteger)。
    • mobile:手机号码,可为空 (String(20))。
    • username:用户名,可为空,并建立索引 (String(64))。
    • fullname:全名,不允许为空,并建立索引 (VARCHAR(64))。
    • password_encrypted:加密后的密码 (BYTEA)。
    • initial_password:初始密码 (VARCHAR(64))。
    • initial_password_login_time:初始密码登录时间 (TIMESTAMP),可为空。
    • last_login_time:最后登录时间 (TIMESTAMP),可为空。
    • status:状态,整数类型,默认为 0,不允许为空。
    • delete_dt:删除时间 (Integer),可为空。
    • create_operator_id:创建操作员 ID,默认为 0,不允许为空,并建立索引 (BigInteger)。
    • update_operator_id:更新操作员 ID,默认为 0,不允许为空,并建立索引 (BigInteger)。
1.2 特殊属性和方法
  • 密码处理

    • @property password:获取解密后的密码。
    • @password.setter:设置密码时自动加密并存储到 password_encrypted 字段。
  • to_dict 方法

    • 将模型实例转换为字典格式,便于序列化。
    • initial_password 字段:如果当前密码与初始密码相同,则显示初始密码;否则,显示为空字符串。
    • last_login_time:硬编码为 "2024-02-21 11:53:35",这可能是一个占位符或需要根据实际情况调整。
1.3 其他配置
  • query_class = QueryWithSoftDelete

    • 表明该模型使用了软删除(soft delete)机制,可能通过 delete_dt 字段来标记删除时间,而不是真正删除记录。
  • BaseModel._declare_dt_column()

    • 调用基类的方法,可能用于声明时间戳字段(如 created_at, updated_at 等),具体取决于 BaseModel 的实现。

2. 通过 Flask Shell 添加数据

要通过 Flask 的 shell 界面添加数据,可以按照以下步骤操作:

2.1 启动 Flask Shell

在终端中,导航到您的 Flask 项目目录,并启动 Flask shell:

flask shell

注意:确保您的 Flask 应用已经正确配置,并且所有必要的环境变量(如 FLASK_APP)已经设置。

2.2 导入必要的模块和模型

在 shell 中,导入 db 会话和 AdminModel 模型:


                
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值