【问题标题】:INSERT a record into a table in SQLAlchemy在 SQLAlchemy 的表中插入一条记录
【发布时间】:2019-11-21 23:11:49
【问题描述】:

我正在使用 SQLAlchemy,我想在数据库中插入一条记录。我在 Flask-Restful 中运行我的应用程序

模型.py

class User(BaseModel, db.Model):

    """Model for the user table"""
    __tablename__ = 'usertable'
    email = db.Column(db.String(120), nullable=False)
    password = db.Column(db.String(200), nullable=False)

注册.py

from app.models import db, User

class Register(Resource):
    def post(self):
        email = request.json['email']
        password = request.json['password']
        db.session.add(User.email = 'test@gmail.com') // Here, I am not sure
        return email

我想将 emailpassword 添加到表 usertable 中。当我运行代码时,显示错误 SyntaxError: keyword can't be an expression 。在 SQLAlchemy 中添加记录的推荐方法是什么?

【问题讨论】:

    标签: python postgresql flask flask-sqlalchemy flask-restful


    【解决方案1】:

    代替:

    db.session.add(User.email = 'test@gmail.com')
    

    试试:

    user = User(email=email, password=password)
    db.session.add(user)
    db.session.commit()
    

    但是,在数据库中存储纯文本密码并不是一个好主意。您应该修改您的用户模型以存储散列密码。

    【讨论】:

    • 我认为您可以假设密码已经在客户端进行哈希处理,但我同意这是一个很好的做法
    猜你喜欢
    • 1970-01-01
    • 2012-01-25
    • 1970-01-01
    • 1970-01-01
    • 2023-02-04
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多