我有形式,看起來像這樣Rails的simple_form錯誤:在我的應用程序錯誤
= simple_form_for @user do |f|
= f.input :name, error: false
= f.input :surname, error: false
有什麼辦法避免這種重複(錯誤:錯誤的)?
我有形式,看起來像這樣Rails的simple_form錯誤:在我的應用程序錯誤
= simple_form_for @user do |f|
= f.input :name, error: false
= f.input :surname, error: false
有什麼辦法避免這種重複(錯誤:錯誤的)?
如果他們都是同一類型的,這樣的事情應該工作:
= simple_form_for @user do |f|
- [ :name , :surname ].each do |field|
= f.input field, error: false
如果沒有,你可以使用哈希或者什麼的,而不是一個數組,並指定類型。
看來,簡單的形式有以下幾個選項:
If you want to pass the same options to all inputs in the form (for example, a default class), you can use the :defaults option in simple_form_for. Specific options in input call will overwrite the defaults:
<%= simple_form_for @user, defaults: { input_html: { class: 'default_class' } } do |f| %>
<%= f.input :username, input_html: { class: 'special' } %>
<%= f.input :password, input_html: { maxlength: 20 } %>
<%= f.input :remember_me, input_html: { value: '1' } %>
<%= f.button :submit %>
<% end %>
從https://github.com/plataformatec/simple_form
所以,你的情況:
= simple_form_for @user , defaults: { error: false } do |f|
= f.input :name
= f.input :surname
你可以通過循環符號數組
simple_form_for @user do |f|
[:name, :surname].each do |element|
f.input element, error: false
end
end
這是個好主意,但我的真實形式非常複雜,許多領域有不同的選擇,這是循環做不出來的。 –
什麼是'error'在你的代碼? – Pavan
錯誤是一個simple_form方法,當您將其更改爲true時,它不顯示字段錯誤。例如,當您將名稱留空並單擊提交時,字段將顯示爲紅色,但沒有任何消息。 –