에서 NilClass 나는이 페이지 검색 내 조직 관계는 내에서 정의 된 방식을 변경하기 전에이 검색은 꽤 잘 작동했다있어 정의되지 않은 메서드`KLASS : 자원 ''전무에 대한 pg_search_scope
pg_search_scope :search_for_result,
associated_against: {
organisation: [:name],
classifications: [:name_fr, :name_en],
org_classifications: [:name_fr, :name_en],
entity: [:name_fr, :name_en],
geocoding: :address_components
},
using: { tsearch: { prefix: true } },
ignoring: :accents
범위가 ' 모델.
전에 has_one through 관계를 사용하여 조직을 설명했습니다.
하지만 지금 내 조직을 내 '리소스'모델에서 직접 정의해야하므로 조직에 organisation_id 필드를 추가해야합니다.
belongs_to :organisation
belongs_to :user
belongs_to :entity
has_one :geocoding, dependent: :destroy
has_many :classifications_resources, dependent: :destroy
has_many :org_classifications, through: :user
나는이 변경 pg_search_scope 더 이상 작동하고 나에게 다음과 같은 오류 제공되지 수행했기 때문에 : 무기 호에 대한
정의되지 않은 메서드`KLASS을 'NilClass 이제 자원 모델의 관계는 다음과 같이 정의된다
activerecord (4.2.6) lib/active_record/reflection.rb:671:in `source_reflection'
activerecord (4.2.6) lib/active_record/reflection.rb:883:in `derive_class_name'
activerecord (4.2.6) lib/active_record/reflection.rb:157:in `class_name'
activerecord (4.2.6) lib/active_record/reflection.rb:883:in `derive_class_name'
activerecord (4.2.6) lib/active_record/reflection.rb:157:in `class_name'
activerecord (4.2.6) lib/active_record/reflection.rb:650:in `klass'
activerecord (4.2.6) lib/active_record/reflection.rb:135:in `table_name'
pg_search (1.0.6) lib/pg_search/configuration/association.rb:17:in `table_name'
pg_search (1.0.6) lib/pg_search/configuration/association.rb:25:in `subselect_alias'
pg_search (1.0.6) lib/pg_search/configuration/foreign_column.rb:20:in `expression'
pg_search (1.0.6) lib/pg_search/configuration/column.rb:21:in `to_sql'
pg_search (1.0.6) lib/pg_search/features/tsearch.rb:162:in `column_to_tsvector'
pg_search (1.0.6) lib/pg_search/features/tsearch.rb:110:in `block in tsdocument'
pg_search (1.0.6) lib/pg_search/features/tsearch.rb:109:in `map'
pg_search (1.0.6) lib/pg_search/features/tsearch.rb:109:in `tsdocument'
pg_search (1.0.6) lib/pg_search/features/tsearch.rb:140:in `tsearch_rank'
pg_search (1.0.6) lib/pg_search/features/tsearch.rb:24:in `rank'
pg_search (1.0.6) lib/pg_search/scope_options.rb:165:in `block in rank'
pg_search (1.0.6) lib/pg_search/scope_options.rb:164:in `gsub'
pg_search (1.0.6) lib/pg_search/scope_options.rb:164:in `rank'
pg_search (1.0.6) lib/pg_search/scope_options.rb:101:in `subquery'
pg_search (1.0.6) lib/pg_search/scope_options.rb:170:in `rank_join'
pg_search (1.0.6) lib/pg_search/scope_options.rb:20:in `apply'
pg_search (1.0.6) lib/pg_search.rb:39:in `block in pg_search_scope'
lib/modules/search_engine.rb:17:in `find'
난 정말이 무엇을 해야할지 모르겠어요 :
은 여기에 전체 스택입니다.
누군가가 내가 잘못된 정보를 얻을 수있는 방법을 알고 있습니까?
아니면 누군가 내가 잘못한 것에 대해 어떤 생각을 가지고 있습니까? 당신이