2012-01-20 2 views
8

이 모델의 인스턴스를 만들려고 만들고, 내가받을 다음과 같은 오류 ...3.2 레일 인수 잘못된 번호 (1 2)에이

u = User.create 
# or .where(...).first_or_create 
# or .where(...).first_or_initialize 
ArgumentError: wrong number of arguments (2 for 1) 

는 누구와 같은 문제가있는 Rails 3.2?

답변

17

모델의 initialize 방법을 오버로드 했습니까? 내 경우, 나는 그것을 과부하했다 : I가 해결해야했다

def initialize(attributes=nil) 
    ... 
end 

: 레일 3.2에서

def initialize(attributes = nil, options = {}) 
    ... 
end 

의 7c5ae0a88fc9406857ee362c827c57eb23fd5f95 (추가 대량 할당 보안을 커밋 : 같은과 : without_protection 지원 to AR.new)는 위의 메소드에 더 많은 논의를 추가했기 때문에 이전 구현이 실패한 이유입니다.

+0

와우, 그건 놀랍습니다. 오류 메시지와 스택 추적은이 위치에 대한 힌트를 전혀 제공하지 않습니다. – Trejkaz

+0

감사합니다. @Trejkaz –

관련 문제