Для контекста я пишу библиотеку, которая использует Django ORM. Я не хочу, чтобы пользователи моей библиотеки определяли app_label
каждый раз, когда они подклассируют мой пользовательский суперкласс Model
, вместо этого я хочу применить стандартную структуру для проектов, созданных с ее помощью, которая гарантирует, что имя пакета каждого класса что подклассы моего Model
суперкласса будут равны app_label
. Вот код, который у меня сейчас есть:
class Model(django.db.models.Model):
class Meta:
abstract = True
def __init_subclass__(cls, **kwargs):
super().__init_subclass__(**kwargs)
# package_name = ???
cls._meta.app_label = package_name
Часть ???
- это то, что я не могу понять. Есть идеи?