2010-05-02 6 views
3

Есть ли более простой способ использования проверки уникальности с Django Forms в AppEngine?Проверка подлинности формы Django на App Engine?

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

Любая помощь приветствуется.

ответ

1

Вы можете использовать ключи уникальности:

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

Каждый объект имеет идентификатор. приложения может назначить свой собственный идентификатор для использования в ключе путем дает конструктору экземпляр KEY_NAME аргумента (значение Обл):

s = Story(key_name="xzy123") 

... После того, как объект был создан , его номер не может быть изменен.

EDIT

Как jbochi отметил, что это может быть опасно, и вы могли бы данные потери. Другой способ добиться этого - использовать хеш-функцию с счетчиками осколков. Хороший пример показан в статье "Paging through large datasets".

+1

Остерегайтесь того, что старый экземпляр будет перезаписан, если вы попытаетесь сохранить новый с тем же «key_name». Ошибок не будет. – jbochi

Смежные вопросы