Flask-Sqlalchemy在同一型号上多对一

时间:2017-03-05 20:49:19

标签: python flask sqlalchemy

我正在开发一个带有仪表板的网站,管理员和版主可以创建用户。我想将主持人和管理员创建的用户分开。主持人只能编辑他/她创建的用户,但管理员可以编辑所有用户。

我创建了这样的用户模型:

class User(UserMixin, ResourceMixin, db.Model):
    __tablename__ = 'users'
    id = db.Column(db.Integer, primary_key=True)

    # User details
    name = db.Column(db.String(50), index=True)
    phone = db.Column(db.String(24)) 
    address = db.Column(db.String(255))
    email = db.Column(db.String(255), unique=True, index=True, nullable=False,
                      server_default='')
    password = db.Column(db.String(128), nullable=False, server_default='')

    # Relationships
    created_id = db.Column(db.Integer, 
                       db.ForeignKey('users.id', onupdate='CASCADE', ondelete='SET NULL'),
                       index=True)
    updated_id = db.Column(db.Integer,
                       db.ForeignKey('users.id', onupdate='CASCADE', ondelete='SET NULL'),
                       index=True)

大多数情况下这段代码就像魅力一样。但是当主持人或管理员尝试编辑self时,程序会抛出CircularDependency错误。可能导致问题的原因是什么?

由于

0 个答案:

没有答案