Получает DeferredAttribute вместо значения во время вызова метода - PullRequest
0 голосов
/ 08 мая 2019

Я пытаюсь вызвать метод, приведенный ниже:

def get_tenant_model():
    return get_model(settings.TENANT_MODEL)

Модель арендатора в настройках:

TENANT_MODEL = "app.Client"

А в этом месте:

    a = get_tenant_model()
    print(a.name)

Я получаю:

<django.db.models.query_utils.DeferredAttribute object at 0x7f0cf7d746a0>

Почему я не могу получить имя Клиента?

1 Ответ

1 голос
/ 08 мая 2019

a.name относится к имени столбец конкретной модели экземпляр . то есть имя конкретного клиента может быть "Боб Смит".

Но вы не ищете имя конкретного клиента; вам нужно имя класса самой модели .

Вместо этого используйте a.__name__.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...