Rails атрибут simple_form требуется метка (*)
Я использую Simple Form в своем приложении, и я хотел бы удалить *
, чтобы указать, что атрибут требуется для всех моих форм (существующих и тех, которые еще не созданы).
Я попытался установить в simple_form.rb
:
# Whether attributes are required by default (or not). Default is true.
config.required_by_default = false
И я попытался изменить simple_form.en.yml
:
required:
text: 'required'
mark: '' # <------ tried setting this to blank.
Я знаю, что могу установить :required => false
для каждого поля, но я хочу очистить представления и установить их один раз.
Ответы
Ответ 1
Настройка simple_form.required.mask
на ''
должна работать, если вы перезапустили сервер.
Но вы можете удалить его, изменив конфигурацию:
# config.label_text = proc { |label, required| "#{required} #{label}" }
к
config.label_text = proc { |label, required| "#{label}" }
Ответ 2
Вы также можете сделать
simple_form_for @model, :defaults => {:required => false}
Ответ 3
на Rails 4 просто удалите "требуемое" слово
config.label_text = lambda { |label, required, explicit_label| "#{required} #{label}" }
поэтому он должен быть
config.label_text = lambda { |label, required, explicit_label| "#{} #{label}" }
Валидация все еще работает!
Ответ 4
просто
# Whether attributes are required by default (or not). Default is true.
config.required_by_default = false
и перезагрузите сервер. Затем он работает.