Как я могу запросить таблицу отношений? - PullRequest
0 голосов
/ 19 февраля 2020

У меня есть таблица с пользователями и таблица с именами групп, и я хотел создать взаимосвязь между этими двумя, чтобы я мог видеть, какие пользователи принадлежали к каким группам. (Я думаю, что я сделал это правильно, похоже, что в моем MySQL верстаке) У меня проблемы с запросом, поэтому я могу вернуть всех пользователей указанной c группы.

Вот мой python код:

groups = db.Table('group_identifier', db.Model.metadata,
                        db.Column('groupname', db.String(255), 
 db.ForeignKey('groups.name')),
                        db.Column('username', db.String(255), 
 db.ForeignKey('users.username'))
                        )

class User(db.Model):
    __tablename__ = 'users'
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(255),
                     unique=True)

class GroupNames(db.Model):
    __tablename__ = 'groups'
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(255), unique=True)
    users = db.relationship("User", secondary=groups, backref=db.backref('users', lazy='dynamic'))

Вот мой запрос, который я пытаюсь выполнить:

query_group = db.session.query(groups).filter(groups.name == request.json['groupname']).all()

конечная цель для меня - вернуть ответ json, который выглядит примерно так:

{
  "groupname": "uuuu",
  "usernames": [
    "test",
    "zzz"
  ]
}
...