2011-08-03 3 views
1

보석 문제 일까에 대한 질문이 있지만 메타 위치 일 수 있습니다. 나는 meta_where-1.0.4를 설치하기 위해 보석을 사용했고, 응답은 meta_where에 대한 uri가 성공했고 meta_where에 대한 uri가 제공되었지만 컨트롤러의 검색 방법에서 where-condition을 시도했을 때 meta와 비슷한 위치에있었습니다. 제공 :ruby-on-rails 보석이 meta_where의 "where"조건에 적합하지 않습니다.

Person.where(:skill_set.matches => 'Hello%' 

오류가보고되었습니다

"undefined method 'matches' for :skill_set:Symbol" 

그것은 보석의 메소드에 액세스되지 않는 경우로합니다. 나는 "require"를 사용하려했지만 도움이되지 않았다.
Windows XP, Firefox, Ruby 1.9.2를 사용하고 있습니다.

무엇을해야합니까? 덕분에, 바니

답변

1

난 당신이 마이그레이션을 실행 한과 person 테이블의 skill_set 속성이 있다고 가정 : 당신이 require 필요하지 않습니다. 그냥 'gem meta_where'을 Gemfile에 추가 한 다음 'bundle install'을 실행하십시오.

+0

감사합니다. 문제는 제가 틀린 gemfile을 사용하고 있다는 것이 었습니다. 그래서 당신이 내가 생각한 것을 말했을 때 나는 젬 파일을 충분히 이해하지 못하고 레일 프로젝트 디렉토리에있는 것을 사용하지 않는다는 것을 깨달았습니다. ".matches"가 이제 작동합니다! – user32848