2012-09-21 4 views
1

액션에 전달 된 매개 변수를 기반으로 레일 컨트롤러 액션에서 내 모델의 as_json 함수에서 반환되는 연결과 메소드를 동적으로 변경하려고합니다.레일즈 as_json throwing "심볼을 정수로 변환 할 수 없습니다."

respond_to do |format| 
     format.html # index.html.erb 
     format.json { render json: @projects.as_json(:include => params[:include]), :methods => params[:methods] } 
end 

이 오류를주고있다 : "에 기호를 변환 할 수 없습니다

다음
{"include"=>{"service_requests"=>"status"}, 
"methods"=>["service_request_count"], 
"program_id"=>""} 

내 컨트롤러 액션이하고있는 것입니다 : 여기

는 작업에 전달되는 매개 변수입니다 정수". 이 문제의 원인은 무엇입니까?

답변

2

:include => { :service_requests => :status } 

:include => { :service_requests => { :include => :status } } 
+0

할 필요가 당신이 as_json에 제공하고있는 인수가되는 반면 : 상태는 협회입니다하지만 요점은 여전히 ​​유효합니다. 그래서 그것이되어야한다고 말하는 것입니다 : service_requests => {: include => : status}? – Dan

+0

예, 그 내용을 반영하도록 답변을 편집했습니다. – cdesrosiers

관련 문제