flask sqlalchemy一对一关系问题

bvmcode

我正在尝试在烧瓶中建立一对一的关系。我有一个db.drop_all()要清除数据库时运行的脚本但是这样做时出现了级联错误。我在模型关系中使用了层叠和single_parent参数进行了许多组合,但没有任何效果。任何帮助将有助于建立一对一的关系,这将使我能够毫无错误地使用db.drop_all()以下是我的最新迭代。

from sqlalchemy.sql import func
from project import db, bcrypt


class User(db.Model):

    __tablename__ = 'user'

    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    email = db.Column(db.String(150), nullable=False)
    password = db.Column(db.String(250), nullable=False)
    active = db.Column(db.Boolean(), default=True, nullable=False)
    created_date = db.Column(db.DateTime, default=func.now(), nullable=False)
    profile = db.relationship("Profile", cascade="all, delete, delete-orphan")


    def __init__(self, email, password):
        self.email = email
        self.password = bcrypt.generate_password_hash(password).decode('utf-8')



class Profile(db.Model):

    __tablename__ = 'profile'

    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    first_name = db.Column(db.String(150), nullable=True)
    last_name = db.Column(db.String(250), nullable=True)
    github_url = db.Column(db.String(250), nullable=True)
    user_id = db.Column(db.Integer, db.ForeignKey("user.id"), nullable=False)
    user = db.relationship("User")
Swapnil suryawanshi
from sqlalchemy.sql import func
from project import db, bcrypt


class User(db.Model):

    __tablename__ = 'user'

    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    email = db.Column(db.String(150), nullable=False)
    ...

    def __init__(self, email, password):
        self.email = email
        self.password = bcrypt.generate_password_hash(password).decode('utf-8')



class Profile(db.Model):

    __tablename__ = 'profile'

    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    first_name = db.Column(db.String(150), nullable=True)
    user_id = db.Column(db.Integer, db.ForeignKey("user.id"), nullable=False)
    ...

    user = db.relationship(
        'User', cascade='all', backref=db.backref('profile', cascade='all'))

请注意如何仅在概要文件模型中定义两个模型之间的关系。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Flask / SQLAlchemy-一对一关系语法

来自分类Dev

Flask-SQLAlchemy 中的一对一关系仅以一种方式工作

来自分类Dev

在Flask,SqlAlchemy中获得一对一关系的“ insert_id”

来自分类Dev

Flask + SQLAlchemy中一对一的设置关系

来自分类Dev

SQLAlchemy + Flask多对一关系

来自分类Dev

Jsonify Flask-SQLAlchemy Flask中的多对一关系

来自分类Dev

与 Flask、SQLAlchemy 添加多对一关系时出现问题

来自分类Dev

Jsonify flask-sqlalchemy烧瓶中的多对一关系

来自分类Dev

Flask-SQLAlchemy:更新一对多关系

来自分类Dev

插入一对一关系

来自分类Dev

休眠一对一关系

来自分类Dev

休眠一对一关系

来自分类Dev

一对一关系插入

来自分类Dev

休眠一对一关系

来自分类Dev

建立一对一关系

来自分类Dev

GSON一对一关系

来自分类Dev

休眠一对一关系

来自分类Dev

一对一关系

来自分类Dev

MYSQL一对一关系

来自分类Dev

实现一对一关系

来自分类Dev

与查询的一对一关系

来自分类Dev

具有一对一关系的SQLalchemy批量插入

来自分类Dev

SQLAlchemy如何使用声明式映射一对一关系的单列

来自分类Dev

如何在SqlAlchemy中描述来自Django ORM的一对一关系?

来自分类Dev

SQLAlchemy 急切/加入加载自引用一对一关系

来自分类Dev

与同一模型的雄辩一对一关系

来自分类Dev

休眠一对一关系错误

来自分类Dev

SQL一对一关系与单个表

来自分类Dev

亲子一对一关系表