Динамическое (на лету) поколение моделей django от mongodb - PullRequest
0 голосов
/ 24 февраля 2012

Я хочу иметь возможность генерировать html-представление некоторой коллекции mongoDB, скажем, простой таблицы.

возможно ли это сделать без фиксированных моделей, потому что заранее не существует известной структуры коллекции.

Какой подход лучше всего подходит здесь?

Я использую django-mongodb вместе с django-nonrel

1 Ответ

0 голосов
/ 24 февраля 2012

У меня очень мало знаний о mongodb, так как я понимаю, что вы получаете dict как результат запроса.

Главный вопрос: какую модель следует инкапсулировать?

Старомодный путь:

class Dog(object):
    def __init__(self, voice=None, **kwargs):
        self.voice = voice

    def bark(self):
        print self.voice

data = assuming_that_django_mongodb_data_is_dict_and_voice_is_included
dog = Dog(**data)

Метод мертвых клеток мозга:

class AnyModel(object):
    def __init__(self, **kwargs):
        for name, value in kwargs.iter():
            setattr(self, name, value)

Думаю, было бы неплохо иметь объекты наборов запросов, но это не так просто, по крайней мере, для меня.

...