Rails simple_form attribute required mark (*)
I am using Simple Form in my app and I'd like to remove the *
to indicate an attribute is required on all of my forms (existing and those yet to be created).
I have tried to set in simple_form.rb
:
# Whether attributes are required by default (or not). Default is true.
config.required_by_default = false
And I've tried to modify simple_form.en.yml
:
required:
text: 'required'
mark: '' # <------ tried setting this to blank.
I know I can set :required => false
on each field, but I want开发者_运维技巧 to clean up the views & set it once.
Setting the simple_form.required.mask
to ''
should work if you restarted the server.
But you can remove it changing the the configuration:
# config.label_text = proc { |label, required| "#{required} #{label}" }
to
config.label_text = proc { |label, required| "#{label}" }
You can also do
simple_form_for @model, :defaults => {:required => false}
on Rails 4 just remove the "required" word
config.label_text = lambda { |label, required, explicit_label| "#{required} #{label}" }
so it should be
config.label_text = lambda { |label, required, explicit_label| "#{} #{label}" }
Validation still works!
just
# Whether attributes are required by default (or not). Default is true.
config.required_by_default = false
and restart your rails server. Then it works.
精彩评论