Разница между appengine_django BaseModel и db.Model - PullRequest
1 голос
/ 12 ноября 2009

Я использую помощник Google App Engine для Django. Этот помощник включает в свой шаблон следующие строки:

from appengine_django.models import BaseModel
from google.appengine.ext import db

# Create your models here.

Должен ли я получить свои модели из db.Model или из BaseModel? Я пробовал оба, и я не вижу никакой разницы. Кажется, что оба работают, даже при использовании форм Django. Есть ли причина не удалять импорт BaseModel и получать все модели из db.Model?

Ответы [ 2 ]

1 голос
/ 12 ноября 2009

BaseModel также выполняет регистрацию унаследованной модели внутри django (поэтому вы можете запросить ее, вызвав django.db.models.loading.get_model ('app_lable.ModelName') и все другие вещи, связанные с этим)

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

BaseModel - это класс, определенный помощником Django. Он расширяет db.Model для того, чтобы Django работал с ним лучше. Причина, по которой вам нужно импортировать оба, заключается в том, что классы свойств по-прежнему используются непосредственно из db, но если вы используете db.Model вместо BaseModel, вы можете найти некоторые функции Django, которые не работают должным образом.

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