Python peewee не работает join. KeyError

255
02 ноября 2017, 05:25

Пробую через join получить данные но возникает ошибка

KeyError: class 'Server2.Models.ChatMembers.ChatMembers'

Пример кода

def __get_chat_members(self, id):
     return (ChatMembers
             .select(Users)
             .join(Users, on=(Users.id == ChatMembers.user_id))
             .where(ChatMembers.chat_id == id))
for member in self.__get_chat_members(1):
    print(member.username)

ChatMembers модель

class ChatMembers(Model):
class Meta:
    db_table = 'chat_members'
id = BigIntegerField(index=True, unique=True)
chat_id = BigIntegerField()
user_id = BigIntegerField()

Users модель

class Users(Model):
id = BigIntegerField(index=True, unique=True)
username = CharField(unique=True)
password = CharField()
phone = CharField(unique=True)
Answer 1

Попробуйте использовать метод naive. Пример:

def __get_chat_members(self, id):
    return (ChatMembers
            .select(Users)
            .join(Users, on=(Users.id == ChatMembers.user_id))
            .where(ChatMembers.chat_id == id)
            .naive())
READ ALSO
Как заполнить map?

Как заполнить map?

Задача следующая: мне надо написать метод, который на вход принимает какой либо текст и возвращает Map, которая хранит количество повторений...

285
Error:(52, 33) error: incompatible types: ClearDB cannot be converted to Context

Error:(52, 33) error: incompatible types: ClearDB cannot be converted to Context

Помогите решить проблемуВ классе ClearDB хочу реализовать разные методы работы с базой (добавить запись, удалить, очистить базу

298
Динамическая подстановка запроса в JasperReports

Динамическая подстановка запроса в JasperReports

Новичок в JR, пытаюсь разобратьсяЕсть приложение, которое выводит данные из БД в зависимости от выбранных условий (отмеченных флагов), причем...

274