레일스를 처음 접해 보았습니다. 그래서 이것은 정말 기본이며, 나는 뭔가 간단하다고 생각합니다. 액션에 JSON을 보내고 JSON에서 응답을 반환하려고합니다. 제가 시도하고있는 단순화 된 버전은 아래에 있습니다.왜 json 객체 대신 null을 반환하는 ruby가 무엇입니까?
JQuery와 내가 사용하고 있습니다 :
var request = { 'voter': { 'voter_name': 'John', 'voter_email': '[email protected]'} };
var url = 'http://someip/Voters/create';
$.ajax({
type: 'POST',
url: url,
data: request,
success: function (data) { alert(data); },
error: function (data) { alert(data); },
dataType: 'json'
});
내 조치 :
def create
@voter = Voter.new(params[:voter])
logger.info(@voter.to_json)
render :json => @voter
end
그것은이 잘 유권자 객체를 보여주는 특히 콘솔을 고려, 잘 반환해야처럼 보인다 :
Processing VotersController#create (for someip at 2010-08-17 21:19:51) [POST]
Parameters: {"voter"=>{"voter_name"=>"John", "voter_email"=>"[email protected]"}}
{"voter":{"created_at":null,"updated_at":null,"voter_email":"[email protected]","voter_name":"John"}}
Completed in 11ms (View: 1, DB: 0) | 200 OK [http://someip/Voters/create]
문제는 내 경고 (또는 다른 방법으로이 da를 보려고합니다. TA)는 모두 나를 보여주고 있습니다. 반환되는 개체가 없습니다. 모든 포인터 크게 감사하겠습니다.
'컬 (curl)'로 그 액션을 쳤다면 어떻게 될까요? 응답이 비어 있습니까? – cam
나는 아주 좋은 질문이므로 지금은 윈도우 박스에 붙어 있습니다. 내 브라우저에서 GET을 통해 해당 작업에 직접 액세스하는 경우 : { "voter": { "created_at": null, "updated_at": null, "voter_email": null, "voter_name": null}} – Jared
게시하고있는 URL이 게시중인 페이지와 다른 도메인에 있습니까? –