【发布时间】:2013-11-03 17:54:54
【问题描述】:
我有一个用户可配置的下拉列表,用户可以在其中使用自己的选项列表填充它。我想用in:foo,bar 之类的验证规则来验证它。
不幸的是,这意味着有些人会输入“是的,我愿意”之类的选项。如果我将下拉选项的内爆列表传递给验证规则,这显然会破坏验证。
是否可以绕过 Laravel 的规则来避免这个问题?
【问题讨论】:
-
这假设您基于逗号内爆,对吗?你能给他们一个文本区域并在换行符上内爆吗? (所以每行一项)
-
@fideloper 我会用逗号分解,因为 Laravel 的
in规则需要一个逗号分隔的值列表。 Textarea 没有帮助,因为用户仍然可以在其中一行中输入逗号。 -
为什么不在输入验证规则之前删除任何逗号?
-
你不能用反斜杠转义逗号吗?如果不是,也许用字符串(如
[comma])替换用户输入中的逗号,然后在检查验证时做同样的事情? -
我更喜欢更简洁的解决方案,但如果您发布该解决方案,我会给它 +1 并接受如果没有更好的解决方案。谢谢!
标签: php validation laravel