【问题标题】:ruby on rails rendering json in js.erbruby on rails 在 js.erb 中渲染 json
【发布时间】:2016-03-07 19:30:59
【问题描述】:

在控制器的创建方法中,我有以下代码:

respond_to do |format|
  format.js { render json: { html: render_to_string(partial: '/users/photos/card', object: @photo, as: 'photo') } }
end

效果很好。现在我想在 create.js.erb 中移动它,以便有可能执行添加 js。但是我不知道如何在 create.js.erb 中呈现上面的 json。

知道如何做到这一点。提前致谢!

【问题讨论】:

    标签: javascript ruby-on-rails ruby json


    【解决方案1】:

    如果我理解正确,那么您想要实现的是能够在 js.erb 视图中访问您的 JSON。为了做到这一点,我过去所做的如下:

    在您的 create.js.erb 中:

    var yourJSON = JSON.parse("<%= raw(j render :partial => '/users/photos/card', object: @photo, as: 'photo') %>");
    

    在你的控制器中:

    respond_to do |format|
      format.js # This will render the create.js.erb
      format.json { render :partial => '/users/photos/card' } # Leave this one in case you also want to be able to respond to this format i.e: "http://localhost:3000/users/photos/card/id.json"
    end
    

    希望这会有所帮助!

    P.S:如果您想实现不同的目标,请告诉我。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-07-29
      • 2012-12-24
      • 1970-01-01
      • 2016-12-30
      • 1970-01-01
      • 2016-03-07
      • 2021-03-21
      • 2011-05-18
      相关资源
      最近更新 更多