Я относительно новичок в Rails и немного удивлен, что это не настраиваемое поведение ... по крайней мере, пока я не смог найти?!? Я думал бы, что 99% форм извлекут выгоду из обрезки пробелов из всех полей string
& text
?!? Думаю, я не прав ...
Несмотря на это, я ищу СУХОЙ способ убрать все пробелы из полей формы (типа: строка &: текст) в приложении Rails 3.
Представления имеют помощников, которые автоматически ссылаются (включаются?) И доступны для каждого представления ... но модели, похоже, не имеют такой вещи?!? Или они?
Итак, в настоящее время я делаю следующее: сначала требует и , затем включает whitespace_helper (он же WhitespaceHelper) но это все еще не кажется СУХОЙ, но это работает ...
ClassName.rb:
require 'whitespace_helper'
class ClassName < ActiveRecord::Base
include WhitespaceHelper
before_validation :strip_blanks
...
protected
def strip_blanks
self.attributeA.strip!
self.attributeB.strip!
...
end
Библиотека / whitespace_helper.rb:
module WhitespaceHelper
def strip_whitespace
self.attributes.each_pair do |key, value|
self[key] = value.strip if value.respond_to?('strip')
end
end
Полагаю, я ищу единственный (СУХОЙ) метод (класс?), Который можно поместить куда-нибудь (lib/
?), Который бы взял список параметров (или атрибутов) и удалил пробел (.strip!
?) от каждого атрибута без названий.