0
我正在嘗試在我的Flask應用程序工作中進行註冊。我已經創建了兩個角色(「管理員」和「用戶」)和一個管理員(我)沒有任何問題。然而,當我試圖通過註冊頁面註冊一個新用戶,我得到以下錯誤:Flask-security:註冊處理呈現user.role_id可能不是NULL錯誤
user.role_id may not be NULL
模式(標準快速入門): 類角色(db.Model,RoleMixin): 名= CharField(獨特= TRUE) 描述=文本字段(空=真)
class User(db.Model, UserMixin):
email = TextField()
password = TextField()
active = BooleanField(default=True)
confirmed_at = DateTimeField(null=True)
class UserRoles(db.Model):
# Because peewee does not come with built-in many-to-many
# relationships, we need this intermediary class to link
# user to roles.
user = ForeignKeyField(User, related_name='roles')
role = ForeignKeyField(Role, related_name='users')
name = property(lambda self: self.role.name)
description = property(lambda self: self.role.description)
我真的不明白這何處來自。首先,您不需要爲新用戶分配角色,其次,由於「角色」是外鍵,因此獲取用戶角色ID的正確方法是user.role.id
而不是user.role_id
。