Я хочу реализовать такую модель с помощью Pewee / Python3.
Есть пользователи, которым нужно публиковать сообщения на разных каналах.
Таким образом, должно быть две таблицы: каналы и пользователи . В упрощенном виде это выглядит так:
каналы
PK channel_id: int
имя_канала: строка
название: строка
пользователи
PK user_id: int
имя_пользователя: строка
Каналы FK: список каналов
Полагаю, это должно выглядеть так:
class Channel(BaseModel):
channel_id = PrimaryKeyField()
user = ForeignKeyField(User, backref='user')
channel_name = CharField()
title = CharField()
class User(BaseModel):
user_id = PrimaryKeyField()
user_name = CharField()
title = CharField()
channels = ForeignKeyField(Channel, backref='channels', null=True)
И я хочу, чтобы он был доступен в виде общего списка Python, например
some_user.channels.add(sample_channel)
...
for channel in some_user.channels:
...
и др.
Но я не могу использовать User.channels в качестве коллекции.
Как я могу реализовать это с помощью Peewee?