나는 레일 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 %>
없음.
저는 실제로 레일을 포기했습니다. 나는 반응을 배우고있다. 최신이 아니며 지원되지 않는 것 같은 레일/jquery에 관한 많은 것들이 있습니다. 나는 단지 4.5 년의 노력 끝에 배울 수 없었습니다. 어쨌든 팁을 주셔서 감사하지만 레일과 jQuery를 포기했습니다. – Mel
@Mel. 행운을 빕니다. React에 대한 나의 빠른 읽기는 완전한 해결책이 아니라는 것입니다. – Greg
아니요 - 지금은 레일 백엔드와 함께 사용하겠습니다. – Mel