проверка, чтобы запретить один символ (<) в Rails

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

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

0
задан timpone 18 January 2019 в 17:09
поделиться

2 ответа

Вы в настоящее время захватываете только первого персонажа. Таким образом, вы, вероятно, хотите сделать что-то вроде [^<].* (строка, начинающаяся с чего-либо, кроме <, за которой следуют произвольные символы)

0
ответ дан inyono 18 January 2019 в 17:09
поделиться

Вы можете использовать without вместо with в проверке
. Вы можете избежать меньше, чем, как предполагает Зише , но я не думаю, что это необходимо.

validates :first_name, format: { without: /</ }

https://guides.rubyonrails.org/active_record_validations.html#format

правка: включены точки @engineersmnky, намного проще.

0
ответ дан Matt 18 January 2019 в 17:09
поделиться
Другие вопросы по тегам:

Похожие вопросы: