2010-03-17 5 views
1

이 함수의 출처를 찾으려고합니다. 어떤 단서가 있니? 그것은이에 의해 사용되는 :find_or_create_by_facebook_id 메서드를 찾을 수 없습니다.

http://facebooker-authlogic-bridge.heroku.com

코드를 다운로드, 그것은 던졌습니다 : undefined method 'find_or_create_by_facebook_id' for #<Class:0xb04dd1c>

나는이 기능에서 오는 단서가 없다 여기에 동작하는 예제와

http://github.com/fluidtickets/facebooker-authlogic-bridge

.

감사합니다.

답변

2

ActiveRecord는 데이터베이스의 열을 기반으로 동적 찾기를 만듭니다. 사용자 이름 속성을 가진 사용자가 있다면 그래서 예를 들면 다음 액티브 동적 파인더의 숫자를 만듭니다

find_by_username_and_email 

다시 문제에 도착

당신은 문자열 수
find_by_username 
find_or_initialize_by_username #=> calls new if not found 
find_or_create_by_username #=> calls create if not found 

몇 가지 속성 함께 같은를 - 나는 당신이 db의 사용자 테이블에 facebook_id를 추가하는 몇 가지 필수 마이그레이션을 실행하지 않았으므로 ActiveRecord가 facebook_id에 대한 동적 찾기를 클래스에 추가하지 않는다고 생각합니다.

+0

동일한 문제가 facebook_id에 db에 추가되지 않습니다. 번들 exec rake db를 실행했습니다 : 마이그레이션하고 2 개의 데이터베이스가 있습니다. SQLite도 사용하고 있습니다. 그것이 이유가 될 수 있습니까? 나는 위에서 언급 한 오류를 얻었거나, 기대하지 않았을 때 무명 물체를 가지고있다! Array의 인스턴스를 예상했을 수 있습니다. nil을 평가하는 동안 오류가 발생했습니다. []'... 코드를 약간 변경하면 정보 배열이 비어 있다는 의미입니다. 나는이 추론으로 나를 좁히는 것이라고 생각한다. – Tony

관련 문제