Sobes.tech
Junior — Middle
97

Cum se obține lista completă a tuturor modelelor din biblioteca Ormar?

Companiile au fost întrebate
Страна Девелопмент

Răspuns de la AI

sobes.tech AI

В библиотеке Ormar для получения полного списка всех моделей можно использовать атрибут ormar.ModelMeta.models или хранить модели в отдельном списке при их определении.

Пример, как можно собрать все модели:

import ormar

class BaseMeta(ormar.ModelMeta):
    database = ...
    metadata = ...

class Model1(ormar.Model):
    class Meta(BaseMeta):
        tablename = "model1"
    id = ormar.Integer(primary_key=True)

class Model2(ormar.Model):
    class Meta(BaseMeta):
        tablename = "model2"
    id = ormar.Integer(primary_key=True)

# Список моделей
all_models = [Model1, Model2]

# Или, если нужно динамически, можно использовать introspection по модулю

Ormar не предоставляет встроенного метода для автоматического получения всех моделей, поэтому обычно их собирают вручную или через рефлексию по модулю, где они определены.