Как получить ключ сущности при использовании django-nonrel в App Engine - PullRequest
2 голосов
/ 17 мая 2011

Я использую django-nonrel (http://www.allbuttonspressed.com/projects/djangoappengine) в Google App Engine. У меня настроены мои модели и т. Д., И все отлично работает. У меня был только один вопрос. Я хочу получить доступ к ключу сущности.модель с именем 'Review', я делаю Review.objects.get(pk = 1).key(), которая выдает ошибку (AttributeError).

Есть ли какой-нибудь способ, которым я могу получить ключ данного объекта, чтобы я мог использовать его вместо того, чтобы быть вынужденным использоватьpk / id? Я хочу использовать ключ в качестве уникального идентификатора для уникальных и секретных URL-адресов (если у кого-то есть лучшее предложение для достижения этой цели, я весь слух).

Ответы [ 2 ]

0 голосов
/ 19 мая 2011

Вы можете получить свой первичный ключ на django-nonrel из метаданных:

review._meta.pk

или для имени ключа: ключ = GetAttr (обзор, review._meta.pk.column)

Видимо, поле 'id' меняется в зависимости от того, используете ли вы на dev или на производственном сервере. Так что это работает!

ссылка: http://www.b -list.org / блог / 2007 / Ноябрь / 04 / рабочие-модели /

0 голосов
/ 17 мая 2011

Вы можете получить идентификатор, вызвав object.key (). Id (), который возвращает уникальный ключ внутри python. В шаблонах вы можете просто вызвать object.key.id.Затем вы можете использовать get_by_id , чтобы получить объект

...