在rails控制器中保存部分var

时间:2015-11-07 12:17:43

标签: ruby-on-rails ruby-on-rails-4

我想在var中保存一个部分,之后,我想将这个var像json var一样发送给JS ......好吧,这个例子更好:

我的控制器(我用AJAX调用):

data = {
    created: 'ok',
    up: (params['up'] == 'true') ? 1 : 0,
    down: (params['down'] == 'true' && params['up'] == 'false') ? 1 : 0,
    html: render text: 'ratings/show', locals: {debate_id: params['debate_id'].to_i}
}
format.json { render json: data.to_json }

然后在我的JS文件中,我只需要data.html

错误:

syntax error, unexpected tLABEL, expecting keyword_do or '{' or '('
...             html: render partial: 'ratings/show', locals: {deb...

1 个答案:

答案 0 :(得分:0)

嗯,我知道这个问题的答案。我需要将此部分分配给var,然后再将其分配给我的哈希,我需要使用view_context进行无重定向查看(我希望我已经解释过因为我的英语不好:()。

html = view_context.render partial: 'show', locals: {debate_id: params['debate_id'].to_i}
data = {
    created: 'ok',
    up: (params['up'] == 'true') ? 1 : 0,
    down: (params['down'] == 'true' && params['up'] == 'false') ? 1 : 0,
    html: html
}
format.json { render json: data.to_json }