2016-05-14 2 views
0

Мне нужно создать пользовательский идентификатор проверки подлинности, который будет применяться к одной коллекции, идентификатор которой всегда будет предопределен (генератору не нужен).Как создать валидатор для одной коллекции?

В docs о генераторах ид, это написано:

В настоящее время конфигурация пользовательского генератора применяется к каждому ресурсов (ведра, группы, сборники, отчеты). Это крошечное ограничение может быть легко исправлено, не стесняйтесь связываться с нами!

Но документация о подтверждении идентификатора отсутствует.

Итак, как я:

  1. Реализовать идентификатор валидатор, что
  2. будет применяться только к одной коллекции?

ответ

0

По умолчанию cliquet uses a generator, который принимает следующее регулярное выражение r'^[a-zA-Z0-9][a-zA-Z0-9_-]*$' (все буквы и цифры + подчеркивания и «-»).

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

Теперь, если этого недостаточно, вам нужно будет выбрать правильный валидатор в зависимости от какой-либо конфигурации или уже существующих значений, но это не реализовано в cliquet/kinto.

https://github.com/mozilla-services/cliquet/blob/master/cliquet/resource/init.py#L147, вероятно, хорошее место, чтобы посмотреть/начать с.

+1

Я использовал Kinto.js, и он отказался от создания объекта с использованием не форматированной строки UUID4. Это, похоже, навязывается Kinto.js (а не кинто-сервером), как можно сделать вывод из вашего ответа. Изменение схемы проверки id * исключительно * на Kinto.js сделало трюк. Для потомков: http://kintojs.readthedocs.io/en/latest/api/#custom-id-generation-using-an-id-schema. – doplumi

+0

Собственно, то, что я сказал в последнем комментарии, только частично верно: вы можете заставить Kinto.js принять идентификатор не UUID4, но когда вы '.sync()', вы получите ошибку «path: Invalid id», что означает ' kinto-server' все еще хочет UUID4. Чтобы обеспечить выход для будущих читателей, учебник в документах (http://kinto.readthedocs.io/en/latest/tutorials/custom-id-generator.html?highlight=id%20generator) хорош, если вы ОК с редактированием генерации/проверки подлинности глобально. Я все еще не понимаю, как изменить его на основе сбора. – doplumi

+0

Это ограничение было удалено в Kinto 3.2 – Natim

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