2012-06-04 4 views
0

귀하의 도움에 감사드립니다. _article.html.erb 부분에 함수가 있습니다. 스크립트 태그 안에 함수가 있습니다. 이 함수에는 매개 변수 데이터가 있습니다. 데이터는 Article 객체의 ID가됩니다. 이드는 기사의 이름과 설명을 얻고 싶습니다. 이 데이터 매개 변수를 사용하여 Article 객체의 다른 필드를 평가하려면 어떻게합니까? 그리고 제 질문과 샘플 코드의 레이아웃을 용서해주십시오.JQuery 함수 매개 변수를 사용하여 레일스에서 ​​객체 필드를 평가하는 방법은 무엇입니까?

<script type="text/javascript"> 
    var socket = io.connect('http://127.0.0.1:8000'); 
    socket.on('news', function (data) { 
     $('#test').html(
      '<table><tr><td>' + data + 
      '</td><td><a href="/articles/' + data + 
      '">Show</td><td><a href="/articles/' + data + 
      '/edit">Edit</td><tr></table>' 
     ); 
    }); 
</script> 

업데이트 : 레일 DB 마이그레이션에 정의 된 제 : 모델에서

class CreateArticles < ActiveRecord::Migration 
    def change 
     create_table :articles do |t| 
     t.string :name 
     t.text :desc 

     t.timestamps 
     end 
    end 
    end 

는 :

class Article < ActiveRecord::Base 
    attr_accessible :desc, :name 
    end 
+2

아무도이 'Article' 객체가 무엇인지 알 수있는 수정 구슬을 가지고 있지 않습니다. – charlietfl

+0

정보를 업데이트했습니다. 고맙습니다. –

+0

OK ... 나는 당신이 자바 스크립트에서 객체 파싱을 처리하고 싶다고 생각했다. – charlietfl

답변

0

나는 내 문제에 대한 해결책을 발견했다. 그러나 jquery get() 메서드를 호출하여 show.html.erb를 호출했습니다.이 컨트롤러의 액션은 id를 매개 변수로 사용하여 객체를 가져옵니다. 이제 show.html.erb에서 해당 객체를 사용하여 다른 필드를 가져옵니다.

<script type="text/javascript"> 
var socket = io.connect('http://127.0.0.1:8000'); 
socket.on('news', function (data) { 
    var url = '/articles/' + data 
    $.get(url, function(x) { 

      $('#test').append(x); 
     }); 
}); 

</script> 

<div id="test"></div> 

_article.html.erb

에서

나는이 부분 지문을 사용하여 수행 할 수 있다고 생각이 내가 지금 일을 하겠어 것입니다. 그러나 최소한 나는 첫 번째 테스트에서 실시간 업데이트를 볼 수있었습니다.

관련 문제