У меня есть модели / таблицы с пользователем и группой пользователей.
class User(db.Model, UserMixin):
__tablename__ = "user"
id = db.Column(
db.Integer,
primary_key=True
)
username = db.Column(
db.String(20),
unique=True
)
[...]
group_id = db.Column(db.Integer, ForeignKey('user_group.id'))
group = db.relationship(UserGroup)
[...]
class UserGroup(db.Model):
__tablename__ = "user_group"
id = db.Column(
db.Integer,
primary_key=True
)
name = db.Column(
db.String(32),
unique=False
)
[...]
и enum с типом привилегий
from enum import Enum
class UserGroupPrivilege(Enum):
PAYMENTS = "payments"
USERS_MANAGEMENT = "users_management"
[...]
Есть ли способ подключить это, чтобы показать и отредактируйте это в flask -admin в хорошем виде? Что-то вроде отношения «многие ко многим», но с UserGroup для перечисления UserGroupPrivilege.
Я хочу получить эффект, когда при редактировании UserGroup я могу добавлять или удалять привилегии, но выбираю их только из значений перечисления. То же, что и пользователи при редактировании UserGroupPrivilege.
![enter image description here](https://i.stack.imgur.com/FirUm.png)