2017-03-05 6 views
0

나는 레일 5 앱에서 간단한 양식으로 select2를 사용하는 방법을 알아 내려고하고 있습니다.레일 5, Select2 레일이있는 간단한 양식

나는 앱에서 taggable로 행위를 사용하고 있습니다. 내 보석 파일이 보석을 설치 한

는 :

gem 'select2-rails' 

내 gemfile이 보석을 설치하려고하지만 오류가 발견 질수 말하는 얻을. 그것은 레일 5와 호환되지 않는 경우 궁금하네요 (주어진 마지막 업데이트 2015).

# gem 'select2_simple_form' 

내 목표는 사용자가 태그 된 모델에 사용할 수 5 개 미리 정의 된 태그를 선택하여 완료 할 수있는 형태의 입력 필드를 확인하는 것입니다.

저는이 솔루션을 this post과 앞으로 올리려고 시도했으며이 문서 스트림의 모든 예제를 시도했습니다. 나는 그들 중 누구도 일할 수 없다. 내 application.js에서

, 나는이 : 나는 또한 이들 각각을 시도

//= require select2 

:

// $(document).ready(function() { 
// $(".js-example-basic-multiple-limit").select2({ 
// maximumSelectionLength: 2 
// }); 
// 
// }); 

$(document).ready(function() { 
    $('.multiple-input').each(function() { 
    $(this).select2({ 
     tags: true, 
     tokenSeparators: [','], 
     theme: 'bootstrap', 
     placeholder: 'Separated by comma' 
     }); 
    }); 
}); 

$(document).ready(function() { 
    $('.input-row #proposal_randd_field_list, .input-row #proposal_randd_field_list').select2({tags:[]}) 
}); 

나는이 모든 일을 얻을 캔트. Google 콘솔을 검사 할 때 js 오류는 발생하지 않지만 select 2 기능을 사용할 수 없습니다. 간단한 양식으로 드롭 다운 메뉴를 사용할 수 있다는 일반적인 방식으로 선택할 수 있습니다.

내 Randd :: Field 모델 (제목 : 해당 제목은 제안 모델의 태그이며 해당 제안 모델의 randd_field_list에 저장 됨)의 콘텐츠를 검색 가능으로 액세스 할 수 있도록하는 것이 내 목표입니다. , here으로 표시된 목록을 드롭 다운하십시오 (원격 데이터로드 중).

누구나 간단한 양식을 사용하여 레일에서이를 수행하는 방법을 알고 있습니다. 문서가 전혀 정렬되지 않습니다.

나의 현재의 시도는 다음과 같습니다

<%= f.collection_select :randd_field_list, Randd::Field.order(:title), :title, :title, {:selected => @proposal.randd_field_list, :include_blank => true}, input_html: {:class => 'multiple-input', :multiple => true} %> 

은 위의 날 (활성화 application.js 기능의 변화에) 여러 개의 태그를 선택할 수 없습니다.

나는 또한 시도하지 않은 :이 작품의

<!-- <select class="js-example-basic-multiple" multiple="multiple"> --> 
<!--<input type="hidden" id="ajax-example" /> --> 

<%#= f.label :randd_field %> 
<%#= f.collection_select :randd_field_list, Randd::Field.order(:title), :title, :title, input_html: { class: 'multiple-input', multiple: "multiple" } %> 

<%#= f.collection_select :randd_field_list, Randd::Field.order(:title), :title, :title, {:selected => @proposal.randd_field_list, :include_blank => true} %> 
<!-- </select> --> 
    <!-- <select class="js-example-basic-multiple" multiple="multiple"> --> 
    <!-- <option value="AL">Alabama</option> 
    <option value="WY">Wyoming</option> 
</select> --> 
     <%#= f.text_field :randd_field_list, input_type: "textbox", name:"proposal[randd_field_list][]", html_options: { style: 'width: 100%' } %> 
     <%#= f.collection_select :randd_field_list, Randd::Field.order(:title), :title, :title, {} %> 
     <%#= f.input 'randd_field_list', 
     options_from_collection_for_select(@randd_fields, :title, :title), 
     multiple: true %> 
     <%#= f.collection_select 'randd_field_list', 
     options_from_collection_for_select(@randd_fields, :title, :title), 
     multiple: true %> 
     <%#= f.input :randd_field_list,:collection => @randd_fields,:label_method => :title,:value_method => :title,:label => "Fields" ,:include_blank => false, :multiple => true %> 

없음.

답변

0

일부 레일즈 5 업데이트 정보를 찾고 귀하의 게시물을 가로 질렀습니다. 나는 초보자지만, 너무 많은 작은 보석 문제로 씨름하고 있습니다. select2을 포기하고 simple_form을 사용하여 필요한 것을 수행해야하는지 궁금합니다. 내가 생각하기에 태그를 다루는 방법을 모르기 때문에 그냥 생각했습니다.

행운을 빈다.

+0

저는 실제로 레일을 포기했습니다. 나는 반응을 배우고있다. 최신이 아니며 지원되지 않는 것 같은 레일/jquery에 관한 많은 것들이 있습니다. 나는 단지 4.5 년의 노력 끝에 배울 수 없었습니다. 어쨌든 팁을 주셔서 감사하지만 레일과 jQuery를 포기했습니다. – Mel

+0

@Mel. 행운을 빕니다. React에 대한 나의 빠른 읽기는 완전한 해결책이 아니라는 것입니다. – Greg

+0

아니요 - 지금은 레일 백엔드와 함께 사용하겠습니다. – Mel