2011-10-20 5 views
3

나는 Rails 초보자이며 ajax에서 레일즈 컨트롤러로 게시하고 데이터를 javascript로 반환하는 것에 대한 질문이 있습니다. 나는 이것이 실제로 어떻게 작동하는지에 익숙하지 않지만, 다른 SOF 스레드에서 작업 포스트 기능을 결합했습니다. 지금, 나는 간단한 버튼 클릭의 데이터를 게시하도록하겠습니다, 그리고 아약스 코드는 다음과 같습니다Jquery, Ajax, Post Function, Rails

def create 
    @user = User.create(params[:tester]) 
end 

이 : 여기

$.ajax({ 
    type : 'POST', 
    url  : "http://localhost:3000/fbusers", 
    data : { tester : { name : 'boom' } }, 
    success : function(data) { 
       alert(data);   
      }, 
}); 

, 그 아주 간단 컨트롤러에 코드입니다 코드는 db에 항목을 작성 (게시물?)하는 create 함수에 데이터를 게시하는 데 잘 작동합니다. 그러나 나는 "성공"에 대한 경고 기능의 데이터를 반환하고 싶습니다. 하지만 지금 경고는 단지 [object] 객체를 반환합니다. 누구든지 알림 기능에 게시물 데이터를 전달할 수 있습니까? 가능한 경우 설명 (또는 기본 자습서의 지시 사항)도 매우 유용합니다.

미리 감사드립니다.

답변

3

사용자를 반환하고 싶다고 가정합니다.

def create 
    @user = User.create(params[:tester]) 
    respond_to do |format| 
    format.html 
    format.json { render :json => @user} 
    end 
end 

을 그리고 바로 아약스 호출 요청을 nambrot- 감사 @ json으로

+0

프롬프트 응답 톤을 :이 경우 내가 추천합니다. 그러나 완전히 무능한 소리로 들릴 위험이 있으므로 아약스 호출에서 json을 정확히 요청해야하는지 묻습니다. 지난 30 분 동안 Google에이 작업을 시도했지만이 스 니펫의 일부 변형은 내가 추측 할 수있는 가장 좋은 결과입니다. $ .getJSON ("http : // localhost : 3000/fbusers", {user}) This didn ' 나는 일을 포기하고 물었다. – Mike

+1

Ahh- this worked : 경고 (data.user.name); 끝내 주셔서 다시 한번 감사드립니다. – Mike

+0

당신은 환영합니다. – nambrot