0

それはtext_fieldかselectかどうかにかかわらず、私はselect2の影響をレール5のフォームで見ることはできません。 tag_listに値が設定されていない理由を知っていますか? tag_listに値があることがわかりますが、以下のスナップでわかるように、「結果が見つかりません」と表示されます。 select2はいくつかのオプションを試したので、Rails 5で動作しますか? enter image description hereRails 5 ask_as_taggable with select2

形式:すべては、私が代わりにSELECT2のシンプルなテキストフィールドを作り、強いのparamsに:tag_listを追加することにより、DB内のタグを追加することができたボックス

<%= f.label :tags, "Tags (separated by commas)" %> 
<%= f.text_field :tag_list, value: f.object.tag_list.each { |e| e} %> 
<input type="checkbox" id="checkbox" >Select All 

にすべての値を表示します]を選択します。

application.js -

注:私はSELECT2フル私はグーグルのどこかで見た使用oをSELECT2は仕事をdidnot。

//= require underscore 
//= require select2-full 

SELECT2

$(function() { 
$('input#post_tag_list').select2({tags:[], placeholder: "Choose a Tag", allowClear: true}) 

ためのJSコード})。

今、私は通常のHTMLでそれもSELECT2で働いていた& JSをチェックする(またはSELECT2フル)

<select multiple id="e1" style="width:300px"> 
    <option value="A">Apple</option> 
    <option value="B">Banana</option> 
    <option value="G">Grapes</option> 
    </select> 

    <input type="checkbox" id="checkbox" >Select All 

とそれに対応するJSコードは次のとおりです。

$("#checkbox").click(function(){ 
if($("#checkbox").is(':checked')){ 
    $("#post_topic_list > option").prop("selected","selected"); 
    $("#post_topic_list").trigger("change"); 
}else{ 
    $("#post_topic_list > option").removeAttr("selected"); 
    $("#post_topic_list").trigger("change"); 
} 

});

通常のHTML select-inputがselect2で動作すると誰かが指摘できますが、なぜレール5に同じ機能がないのですか?私はbootstrap_form_forとform_forの両方で試しました。私はturbolinksの問題についても読んで...どのようにturbolinks select2を読み込まないで問題に取り組むか?

答えて

0

私が選択するテキストフィールドを変更することによってそれを解決:

<%= f.select(:tag_list, Tag.all.order(:name).collect { |a| [a.name, a.id]}, {}, id: "tag_list", label:'Tags', :multiple => true)%> 

JSコード:

$(function() { 
$("#tag_list").select2(); 

})。

はい、app/modelsにTag.rbというファイルを追加してください。宝石はテーブルをインストールするだけですが、モデルは作成しません。

class Tag < ApplicationRecord 
    validates_presence_of :name 
end