2013-03-14 2 views
1

레일 액티브 테스트 스위트에서 문자 루비 1.9 람다를 사용하여 혼란 액티브 테스트 파일을 레일 또는 do?) -> "화살"이 리터럴 람다를 만들지 만, 이것이 어떻게 belongs_to (name, options = {})에 대한 올바른 인수 집합인지 알 수 없습니다.는 거의 관련 문제를 해결하기 위해 노력하는 동안, 나는이 몇 가지 코드를 가로 질러

belongs_to :author_with_posts, <something that results in a key/value pair>, :class_name => "Author", :foreign_key => :author_id 

전술 파일이 구조의 인스턴스으로 가득하고 그것은 분명히 잘 작동하지만 나는 전혀 아무 생각이 왜 :이 같은 것을 기대했을 것이다. 나는 사용하여 시도 - 내 자신의 (분명히)과 유사한 액티브 협회에> 구문을했지만 작동하지 않았다, 나는이있어 :

ArgumentError: wrong number of arguments(3 for 2) 

그것은 나도 아주 기본적인 뭔가를 놓친 것 같아를? 아니면 post.rb 코드에 눈을 맞추는 것보다 더 많은 것이 있을까요?

답변

3

실제로 최신 버전의 belongs_to에는 3 개의 매개 변수가 필요합니다.

두 번째 매개 변수는 scope 매개 변수이며 4.0.0 버전에서 도입되었습니다.

The Code for 4.0.0 is here

는 그가 scope 매개 변수를 추가 그것은 당신 때문에 당신이 가장 가능성이 사용 레일 3.2.12 작동하지 않습니다 there

커밋.

+0

D' oh! 감사를위한 @Intrepidd! 당신 말이 맞습니다. Rails 3.8을 사용하고 있지만 4.0 테스트 코드를보고있었습니다. –

관련 문제