Django get lazy reference by Model

Чтобы получить модель из ленивой ссылки, мы можем сделать

from django.apps import apps
Article = apps.get_model('articles.Article') 
# app.Model

Но как насчет обратного варианта? Я имею в виду получить ленивую ссылку app.Model на Model класс.

from articles.models import Article
# something like
print(Article.lazy_reference)
# <str> articles.Article

вы, наверное, задаетесь вопросом, зачем я это делаю, мне нужно отследить инициативу и пассивные действия пользователя, в django нет modelfield, поэтому я храню ссылку на модель и пк как индикацию.

Используйте опции meta,

model_meta = Article._meta

lazy_ref = f"{model_meta.object_name}.{model_meta.app_label}"
Вернуться на верх