Использование существующей NDB в Google App Engine после перехода с Webapp2 на Django

Я нахожусь в процессе преобразования приложения Webapp2 в Django на Google App Engine. Все относительно просто, и модели были преобразованы из моделей веб-приложений в эквиваленты django.

Однако мне кажется, что в сообщениях команды разработчиков приложения, ссылающихся на это, это могло быть приукрашено. ... Нужно ли мне выполнять миграцию данных, чтобы повторно использовать существующие данные, или я могу просто каким-то образом использовать существующие модели NDB? (Если да, то какие конфигурации нужны? Я не могу понять это).


person snakesNbronies    schedule 11.11.2014    source источник
comment
Привет, возможно, вы еще помните процесс преобразования приложения webapp2 в django на GAE? Поскольку ссылка была изменена Google, и я не могу найти помощь по преобразованию.   -  person LeonBrain    schedule 10.02.2016


Ответы (2)


в бессхемных базах данных нет концепции переноса данных. Миграция, о которой вы думаете, на самом деле является созданием или изменением схемы базы данных, т.е. БД должна иметь схему только тогда, когда идея миграции имеет смысл.

person pbhowmick    schedule 16.11.2014

Изучив это немного подробнее, я заметил, что по умолчанию GAE создает db_tables с именами по умолчанию как <app_label>_<model_name> (т. е. coreapp_GuestBook).

В результате, если вы укажете метапараметры модели в Django, сопоставив имя преобразованного приложения с именем исходного приложения, вы сможете получить доступ к тем же моделям с Django. Обратите внимание, что значения полей могут быть недоступны или повреждены, если вы не выполнили преобразование полей веб-приложения в соответствующие поля Django одно за другим.

См. ссылку: https://cloud.google.com/appengine/articles/django-nonrel< /а>

Например, в моем случае приложение Article будет получено путем указания:

class Article(models.Model):
    title = models.CharField(max_length=255)

    class Meta:
        db_table = 'Article'
        verbose_name = 'Article'
        verbose_name_plural = 'Articles'
person snakesNbronies    schedule 27.11.2014