rails simple_formgemに問題があります。ブートストラップ4を一緒に使用しています。
gem 'simple_form'
Gemfileに追加してgemをインストールしました。また、を介してジェネレーターを実行しましたrails g simple_form:install --bootstrap
。
Simple Formは、私のアプリではほぼ完全に機能します。これは、1つの文字列属性を持つ「Store」というモデルを使用した例です:「name」。
<%= simple_form_for @store do |f| %>
<%= f.input :name %>
<%= f.button :submit, class: "btn-primary" %>
<%= link_to "Cancel", stores_url, class: %w[btn btn-danger] %>
<% end %>
このコードで私が抱えている唯一の問題は、フォームが更新ページに使用されるときに、simple_formが入力要素に「.is-valid」クラスを追加し、ブートストラップがフィールドに緑色の境界線を追加することです。これは、「新規」アクションのフォームを使用する場合など、フィールドが事前に入力されていない場合は発生しません。
ありがとう
ではconfig/initializers/simple_form_bootstrap.rb
、あなたで始まるいくつかの異なるブロックを持っていますconfig.wrapper
。valid_class: 'is-valid'
それらからの参照を削除して、フォーム入力に含まれないようにすることができます。すなわち..。
これを変える
config.wrappers :vertical_form, tag: 'div', class: 'form-group', error_class: 'form-group-invalid', valid_class: 'form-group-valid' do |b|
...
b.use :input, class: 'form-control', error_class: 'is-invalid', valid_class: 'is-valid'
...
end
これに(削除することによりvalid_class
)
config.wrappers :vertical_form, tag: 'div', class: 'form-group', error_class: 'form-group-invalid' do |b|
...
b.use :input, class: 'form-control', error_class: 'is-invalid'
...
end
また、参照をerror_class
含めたくない場合は、への参照を削除することもできます。
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加