【问题标题】:How to render a normal view file using "render" method in Rails?如何在 Rails 中使用“渲染”方法渲染普通视图文件?
【发布时间】:2023-03-05 10:22:01
【问题描述】:

我有 2 个视图文件,index.html.erbindex.js.erb。 erb 文件显然包含要发送到yield 调用的所有数据。

现在我想将index.html.erb 的内容插入到页面上的#contents div 中,使用index.js.erb

有没有办法将索引erb文件渲染到js.erb文件中的一个变量中,这样我就可以将它发送给客户端了?目前我必须创建一个包含完整 html.erb 文件的部分文件,并从两个主视图中调用它。

【问题讨论】:

    标签: ruby-on-rails ruby-on-rails-3 ruby-on-rails-3.1 ruby-on-rails-3.2


    【解决方案1】:

    在您的 index.js.erb 中(此处为 post 资源的示例):

    <%= render template: "posts/index.html" %>
    <%= render template: "posts/index.html" layout: false %>
    

    Using render 在 rails 指南中有很好的描述。

    【讨论】:

    • 是的!搜索代码时才找到的(文件:“”)。您知道 file: 和 template: 之间是否有任何区别?两者对我来说都是一样的。
    • 实际上使用模板:默认情况下您会获得内容类型'text/html'和文件:您可以指定任何内容,包括自定义。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-10-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-05-19
    • 2022-11-29
    • 2020-11-15
    相关资源
    最近更新 更多