Оболочка google.appengine.ext.db.Model => django.db.models.Model - PullRequest
0 голосов
/ 08 октября 2009

Учитывая, что слои персистентности gae & django очень похожи, мне интересно, пытался ли кто-нибудь создать упаковщик? Скажем, может быть полезным для использования django.forms.ModelForm. Есть ли какие-то принципиальные проблемы с этим?

Ответы [ 4 ]

2 голосов
/ 08 октября 2009

App-engine-helper предоставляет ограниченную поддержку для этого, но вы все еще имеете дело с тонко замаскированными моделями App Engine. Я не очень хорошо знаком с модельной структурой Django, но основная проблема заключается в том, что модельная структура Django просто слишком привязана к реляционным базам данных, чтобы легко переходить на серверную часть App Engine.

Вы можете использовать вариант ModelForms, встроенный прямо в SDK App Engine, однако - подробности см. здесь .

1 голос
/ 05 сентября 2010

Django norel - лучшая альтернатива app-engine-helper. Это гораздо лучшая абстракция, которая поддерживает запросы django (многие из них - нет поддержки JOIN), ключи foregin (однако, отношения ManyToMany отсутствуют).

Django norel поддерживает приложение администратора (app-engine-patch не поддерживает).

0 голосов
/ 07 ноября 2009

Дизайн моделей Django подразумевает, что вы используете реляционную базу данных. К сожалению, Datastore не поддерживает все функции реляционной базы данных. Например, в хранилище данных нет эквивалента запроса на соединение. Общие транзакции также не поддерживаются . Таким образом, было бы очень трудно (если не невозможно) адаптировать Datastore для работы в качестве замены для моделей Django.

В 4:45 из этого видео на YouTube , Гвидо фон Россум кратко описывает, как вам нужно переосмыслить дизайн вашей базы данных в соответствии с моделью хранилища данных. Выгода в том, что вы сможете очень хорошо масштабироваться. В 48:30 кто-то спрашивает, почему API Datastore не было разработано так, чтобы больше походить на модели Django. Гвидо объясняет, что фундаментальные различия между Datastore и реляционной базой данных делают это непрактичным. 13:20 также обсуждает это.

0 голосов
/ 08 октября 2009

Что вы имеете в виду как Помощник Google App Engine или Патч Google App Engine ?

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