Я использую условный оператор, как это в моем коде:Условный оператор дает соответствующий запрос не существует исключение
if not profile.client.user.id == 3:
Как-то, что дает мне Exception: Client matching query does not exist.
исключение. Это всего лишь условный оператор, поэтому я не уверен, почему я получаю это исключение. Кто-нибудь знает, что может пойти не так?
UserProfile Модель
class UserProfile(models.Model):
# This field is required.
user = models.OneToOneField(User)
client = models.ForeignKey(Client,null=True)
Клиент Модель
class Client(models.Model):
user = models.ForeignKey(AUTH_USER_MODEL, related_name='oauth2_client',
blank=True, null=True)
пользователя Модель
Это стандартный django user model
Что такое код для 'profile.client.user.id'? Это дескриптор данных? – Eithos
Профиль @Eithos - это модель пользовательского профайла, а клиент - внешний ключ, у клиента есть пользователь как внешний ключ, а у пользователя есть id – Jonathan
. Я просто не понимаю, как мы можем помочь вам с небольшим количеством кода, который вы нам дали. Нет ничего загадочного в том, как работает условный оператор; это просто не то, что вызывает вашу ошибку. Ошибка находится где-то в коде 'profile.client.user.id'. Мы даже не знаем, что это за объект, если атрибут 'id' является дескриптором (поэтому ошибка может возникать из' __get__', если это то, что есть) или из '__eq__', если оно определено , У нас просто нет возможности понять это, не имея доступа к этой информации. – Eithos