如何使用JQuery函数参数来评估rails中的对象字段?

时间:2012-06-04 05:14:26

标签: jquery ruby-on-rails

感谢您的帮助。 我在部分_article.html.erb中有一个函数。它在script标签中有一个功能。该函数具有参数数据。数据将是Article对象的id。有了这个id,我想得到文章的名称和描述。如何使用此数据参数来评估Article对象的其他字段?并请原谅我的问题和示例代码的布局。

<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>

更新:rails db migration中定义的文章:

 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

1 个答案:

答案 0 :(得分:0)

我找到了解决问题的方法。但是,我调用了jquery get()方法来调用show.html.erb,其控制器操作将id作为参数并获取对象。现在,我在show.html.erb中使用该对象来获取其他字段。

在.article.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>

我相信这可以使用partials来完成,这就是我现在要做的工作。但是,至少我可以在第一次测试中看到实时更新。