将Ruby查询转换为javascript?

时间:2011-09-20 08:35:54

标签: javascript ruby

更新了问题

我想强调几周时间小于或等于40的小时数。要做到这一点,我必须查看过去3周的记录表以及当前用户。我在下面写了一些代码,我知道这是不对的,但希望你能得到这个问题。我被告知不要把这个放在js中,但我不知道id是怎么做到这一点考虑到我必须回到js以设置日期选择器上的高亮颜色?

for(i=0;i<3;i++){
    date.setDate(date.getDate() - 7);
        record = Record.sum(:hours,:where => :week => date && :user_id => current_user.id )
    }

1 个答案:

答案 0 :(得分:0)

嗯,这不是一个优雅的解决方案,但我会这样做(这里不需要额外的ajax调用):

控制器/操作中的

...

@record = Record.sum(:hours,:where => :week => date && :user_id => current_user.id ).to_json

...

然后在视图中创建一个隐藏的div:

<div class='hidden' id='records'>
   <%= @record %>
</div>

并在你的js:

record = $.parseJSON( $('#records').text() );

...

你将把你的ruby对象/对象翻译成js