Как мне создать валидатор для одной коллекции?

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

В документах о генераторах идентификаторов написано:

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

Но нет ничего задокументированного о проверке идентификатора.

Итак, как мне:

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

1 ответ

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

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

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

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

Другие вопросы по тегам