json erb模板找不到其他html部分

2023-11-25

我试图有一个 json 响应,其中某些值是由部分呈现的 html

#projects_Controller.rb

def index
  respond_to do |f|
    f.json 
  end
end

# index.json.erb

  {
     "html":"<%= raw escape_javascript(render :partial => 'projects/disclaimer') %>"
  }

但我收到以下错误:

  ActionView::Template::Error (Missing partial projects/disclaimer with {:handlers=>[:erb, :rjs, :builder, :rhtml, :rxml], :formats=>
  [:json], :locale=>[:en, :en]} in view paths "c:/rails/app/views", "c:/rails/vendor/plugins/more/app/views", "C:/Ruby192/lib/ruby/gems/1.9.1/gems/devise-1.1.8/app/views")

看起来 JSON 请求渲染部分名称中包含 .json.erb,但不是 .html.erb,这就是我所拥有的。 有没有办法让我指定“html”。

添加: 如果请求是“js”,并且在index.js.erb中我呈现几乎相同的代码: #index.js.erb

  disclaimer = {
     "html":"<%= raw escape_javascript(render :partial => 'projects/disclaimer') %>"
  }

它确实找到了projects/disclaimer.html.erb并正确呈现它。我想知道为什么会存在这样的不一致:如果请求 js,则其模板中的任何部分渲染都会查找partial_name.html.erb,但如果请求json,则部分渲染会请求partial_name.json.erb?

谢谢


明白了:只需要 .json.erb 文件中的这一行

所以完整的index.json.erb

      <% self.formats = ["html"] %>
      disclaimer = {
        "html":"<%= raw escape_javascript(render :partial => 'projects/disclaimer',
                    :content_type => 'text/html'), 
                    :locals => {:localVariable => @localVariable} 
                %>"
      }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

json erb模板找不到其他html部分 的相关文章

  • 如何将 devise/omniauth 重定向到我登录的页面?

    我通过omniauth 进行了身份验证 并且该链接通过layout application html haml 在每个页面上都可用 然而 当他们完成omniauth身份验证后 他们都会进入root权限 我如何设置它 以便他们重定向到他们单击
  • 从响应中获取标头(Retrofit / OkHttp 客户端)

    我正在使用 Retrofit 与 OkHttp 客户端和 Jackson 进行 Json 序列化 并希望获取响应的标头 我知道我可以扩展 OkClient 并拦截它 但这发生在反序列化过程开始之前 我基本上需要的是获取标头以及反序列化的 J
  • dart中解析对象(不支持的操作:无法添加到固定长度列表)

    我有一个用户对象 当用户登录 注册时 该对象保存到云 Firestore 数据库中 因此 当用户登录时 将从数据库中检索用户对象 并且一切正常 直到我尝试对列表 usersProject 执行 添加 操作 Add the new proje
  • time_select 表单助手将新时间对象解释为 UTC,而不是配置的时区

    我遇到了对我来说似乎很简单的问题 但我无法弄清楚我做错了什么 在我的应用程序中 用户可以通过简单的 form for 添加他们的课程 他们可以输入课程讲座的开始时间和结束时间 如下所示 div class field Start Time
  • Rails 4 可安装引擎,找不到文件“jquery”

    我正在创建一个 Rails 可安装引擎插件 它使用 gem jquery rails 我在 gemspec 文件中添加了这段代码 s add dependency jquery rails gt 3 0 1 and run bundle i
  • 解析“流”JSON

    我在浏览器中有一个网格 我想通过 JSON 将数据行发送到网格 但浏览器应该在接收到 JSON 时不断解析它 并在解析时将行添加到网格中 换句话说 在接收到整个 JSON 对象后 不应将行全部添加到网格中 应该在接收到行时将其添加到网格中
  • R:将 JSON 时间格式转换为 POSIX

    我有一个 JSON 字符串 并将其放入数据框中 我能够做到这一点 但我在使用 apply 函数之一将所有时间字符串转换为 POSIX 格式时遇到问题 See here https stackoverflow com questions 90
  • 使用 KnockoutJs 映射插件进行递归模板化

    我正在尝试使用以下方法在树上进行递归模板化ko映射 插入 http knockoutjs com documentation plugins mapping html 但我无法渲染它 除非我定义separate每个级别的模板 在以下情况下
  • 将记录批量插入到 Active Record 表中

    我发现我的Model create 当我一次添加大量记录时 语句需要很长时间才能运行 看着ActiveRecord 导入 https github com zdennis activerecord import wiki但它不适用于哈希数组
  • “heroku”命令存在于以下 Ruby 版本中:

    我在使用 heroku 工具带时遇到了重大问题 我正在使用 cedar 14 堆栈 当我尝试使用不是的 ruby 版本时ruby 2 0 0 dev我收到这个错误 rbenv heroku command not found The her
  • 如何让 Sidekiq 在 Heroku 上运行?

    这是我第一次尝试让 Redis 在 Heroku 上运行 我添加了一个工作dyno 就在今天 所以还没有付款 添加了RedisToGo Nano附加组件 在我的本地机器上测试了后台作业 并将应用程序推送到heroku heroku ps g
  • JSONObject 文本必须以“{”开头错误

    我有来自我们的 REST 服务之一的 JSON category name Industry Components categoryId 1 category name Business Components categoryId 2 ca
  • JSON GSON.fromJson Java 对象

    我正在尝试将 Json 加载到我的班级中 public User this fbId 0 this email this name this thumb this gender this location this relationship
  • 如何从 Asp.Net Core 中间件通过 JsonResult 进行响应?

    我想通过以下方式回复JsonResult来自 Asp Net Core 中间件 但如何实现这一点并不明显 我用谷歌搜索了很多 但收效甚微 我可以通过JsonResult来自全球的IActionFilter通过设置ActionExecuted
  • AngularJS - 从数据中删除 \n

    捕获和格式化从服务器传递的文本内部以显示换行符的最佳方法是什么 小提琴在这里 http jsfiddle net nicktest2222 2vYBn http jsfiddle net nicktest2222 2vYBn scope d
  • 如何将 JSON 转换为 Scala 中的类型

    我的问题是我收到来自 twitter 的 JSON 文本 然后我想将此文本转换为 scala 中的本机对象 有标准方法可以做到这一点吗 我也在用Play 2 这是我所拥有的 import scala io Source fromInputS
  • 添加多态引用的向下迁移是什么

    我有以下迁移 但不知道在其中使用什么down method change table addresses do t t references addressable polymorphic gt true end 实际上 change ta
  • 使用 CouchDB 提供 HTML 服务

    我正在尝试将 CouchDB 与 HTML 独立 REST 架构一起使用 也就是说 除了 CouchDB 和 ajax 风格的 javascript 调用 CouchDB 之外 没有其他应用程序服务器 看起来交叉脚本是一个问题 我之前使用过
  • 如何调试速度慢得难以忍受的 Rails 资源预编译

    我正在开发一个 Rails 3 2 项目 尽管我不认为该项目很大 但近几个月来资产已经增加了相当多 资产由 JS 无咖啡脚本 和 SASS 文件组成 我们有很多图像 但从早期开始 它们出现的次数就更少了 所以我认为它们不是一个重要因素 我们
  • Rails RESTful 资源对包含分隔符的字段使用 to_param

    我希望我的 Rails 2 3 2 应用程序能够响应并生成 URL 如下所示 websites asd com websites asd com dns records new 在我的 config routes rb 中 我有 map r

随机推荐