Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何从模型属性中删除空白?_Ruby On Rails_Ruby_Trim_Spaces_Strip - Fatal编程技术网

Ruby on rails 如何从模型属性中删除空白?

Ruby on rails 如何从模型属性中删除空白?,ruby-on-rails,ruby,trim,spaces,strip,Ruby On Rails,Ruby,Trim,Spaces,Strip,确保模型从字符串值中修剪前导和尾随空格的最简单方法是什么 一种不方便的方法似乎是“保存前”过滤器——尽管对于像从字符串中删除空白这样常见的事情,可能有一些配置可以做到这一点?没有内置的全局/config设置,因为您不希望总是这样做,因此,如您所述,最好按具体情况进行,并在before过滤器中使用strip(field)。雅各布详细介绍了一种宝石 我还建议在对用户值进行任何操作时要谨慎。一个常见的最佳实践是保存用户类型的“任何内容”、“缺点和所有内容”(好的,在本例中是空格)。然后根据需要在内部操

确保模型从字符串值中修剪前导和尾随空格的最简单方法是什么


一种不方便的方法似乎是“保存前”过滤器——尽管对于像从字符串中删除空白这样常见的事情,可能有一些配置可以做到这一点?

没有内置的全局/config设置,因为您不希望总是这样做,因此,如您所述,最好按具体情况进行,并在before过滤器中使用
strip(field)
。雅各布详细介绍了一种宝石

我还建议在对用户值进行任何操作时要谨慎。一个常见的最佳实践是保存用户类型的“任何内容”、“缺点和所有内容”(好的,在本例中是空格)。然后根据需要在内部操作和设置显示格式。
这里的主要推理是,当用户重新编辑他们的信息时,最好给他们“之前键入的内容”,而不是陷入复杂的验证和非常脆弱的用户界面中


另一个旁注是,确保使用“数据适当”字段,例如,不要以字符串形式存储日期,这是自找麻烦。

我只需要在验证之前运行一个过滤器,并通过撕裂所有参数来修剪它们。如果你把它放在你的基本控制器类上,你只需要设置它,然后忘记它。

事实上,这也让我有点恼火——所以我写了这个

迟早会将其发布为gem,但在此期间

gem 'stripper', :git => "git@github.com:omarqureshi/AR-stripper.git"

在您的gem文件中,将使用
strip\u属性
gem:


您也可以使用回调来去除空白,而无需使用gem。

我不知道有任何配置会重新对其进行格式化,但如果是before\u验证钩子,您可以检查以下内容:请参阅。