0
나는 내 코드를 반복해서 살펴 봤으며 내 문제를 볼 수 없습니다.Ransack의 collection_select 및 HABTM은 정의되지 않은 메서드를 반환합니다.
두 가지 모델 인물과 자격 증명이 있습니다. 그들은 HABTM 관계가 있습니다.
사람
class Person < ActiveRecord::Base
attr_accessible :credential_ids
has_and_belongs_to_many :credentials
UNRANSACKABLE_ATTRIBUTES = ["id", "hidden_note", "created_at", "updated_at"]
def self.ransackable_attributes auth_object = nil
(column_names - UNRANSACKABLE_ATTRIBUTES) + _ransackers.keys
end
end
자격
class Credential < ActiveRecord::Base
attr_accessible :description, :name
has_and_belongs_to_many :people
UNRANSACKABLE_ATTRIBUTES = ["id", "created_at", "updated_at"]
def self.ransackable_attributes auth_object = nil
(column_names - UNRANSACKABLE_ATTRIBUTES) + _ransackers.keys
end
end
여기에 사람들 index.html.erb 내 폼의 :
<%= search_form_for @search, :class => 'no-bottom-margin form-inline' do |f| %>
%= f.collection_select(:credentials_id_eq , Credential.all, :id, :name)%>
<div class='actions'><%= f.submit "Search", :class => 'btn btn-primary btn-large' %></div>
<% end %>
그리고 마지막으로는,이 난 오류입니다 점점.
undefined method `credentials_id_eq' for #<Ransack::Search:0x00000105aa4f28>