.:format 在 rake 路由中意味着什么

2024-01-26

我输入 rake 路线,然后得到一堆像这样的 url -/articles/:id(.:format)

我的问题是 - 什么是.:format意思是? Rails Guides Routing 文章中并不清楚,并且没有其他有用的匹配项.:format在 StackOverflow 或谷歌上。有一个类似的格式是/:controller(/:action(/:id(.:format)))我也不明白。

Thanks

编辑后续问题 -

如果我只想路由 HTML 页面。最好的做法是在路由中指定 .:html 之类的内容,还是使用 .:format 并为 format.html 编写一个 respond_to 块?在后一种情况下,所有其他格式都会被忽略吗?


这就是所请求的文件的格式。例如,如果您想要图像,您可能会在请求中包含文件扩展名 - 例如,example.com/example_image.png会给你格式为png。然后将其包含在请求中,以便您可以根据需要根据请求的格式改变响应类型。

对于使用示例,您可能希望允许将资源表示为 pdf、纯 html 页面和 json - 您可能会编写如下内容:

respond_to do |format|
  format.html { ... }
  format.pdf { ... }
  format.json { ... }
end

然后在各自的格式下进行单独的渲染调用。


EDIT:

的解释GET /:controller(/:action(/:id(.:format))) :controller#:action -

首先,简单介绍一下格式。括号表示给定的数据是可选的。冒号意味着它在相应 URL 中找到的任何字符串都应该传递到 params 哈希中的控制器。

这本质上是一个通配符匹配器将尝试将大量请求匹配到控制器。例如,假设这是您唯一的路线,并且有人尝试获取“/users”。这将映射users to the UsersController,默认情况下调用/渲染index在其中。如果有人得到users/new, the new将调用控制器内的操作。如果id and format被调用时,它们也将被传递给控制器​​。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

.:format 在 rake 路由中意味着什么 的相关文章

随机推荐

  • 导入错误:没有名为 typedefs 的模块

    我正在尝试使用 pyinstaller 创建一个独立程序 在此过程中 我遇到以下错误消息 Traceback most recent call last File
  • 使用 Collective.dexteritytextindexer 扩展 SearchableText

    我正在尝试扩展我的内容类型的 SearchableText 索引 我通过在模型文件中将多个字段标记为 indexer searchable true 成功地包含了多个字段 但是我无法从我的类型的 py 扩展 SearchableText 如
  • 创建与现有表具有相同表结构的 Oracle 临时表

    如何创建与现有表具有相同表结构的全局临时表 我知道这个概念在 SQL Server 中可用 例如 select into temp123 from abc 但我想在 Oracle 中执行相同的操作 Create global tempora
  • OpenGL:调用 glewInit() 后,glGetError() 返回无效枚举

    我使用 GLEW 和 freeglut 由于某种原因 调用 glewInit 后 glGetError 返回错误代码 1280 即使 glewExperimental GL FALSE 也是如此 我无法编译着色器 glGetProgramI
  • jQuery 在控制台中工作,但在原始代码中不工作

    我尝试使用以下代码将 href 添加到 td 内的 a 标记 当我在控制台中时它工作正常 但是当我在代码中尝试相同的操作时 它不起作用 谁能告诉我原因吗 table tr td a Hai a td tr table 使用 document
  • 如何将环境详细信息移至 EAR 之外

    我们的项目是一个中型 Web 应用程序 在 WAS 6 1 hibernate struts 上使用 RAD 7 0 开发 现已投入生产 目前 我们已将生产系统的 IP 地址硬编码在属性文件中 并将数据库架构详细信息硬编码在 hiberna
  • Swift 3 中的 UnsafePointer 初始化器

    我有一个收据验证类 自 Swift 3 发布以来已被弃用 我解决了一些问题 但仍然有很多 这是我使用的 GitHub 源代码 https gist github com baileysh9 4386ea92b047d97c7285 file
  • MySQL 开源报告服务

    我目前正在从事一个需要报告服务的项目 数据库后端是使用 MySQL 构建的 我希望有一个具有与 SSRS 类似功能的东西 有谁有这方面的开源解决方案的经验吗 他们有什么特别推荐的吗 必须通过浏览器访问它 Thanks David 当您说 报
  • 无法使用GDB进行远程调试

    我正在尝试使用 gdb 调试目标 但遭到拒绝 gdb 目标远程10 0 0 2 2345 使用10 0 0 2 2345进行远程调试 警告 架构拒绝了目标提供的描述 远程 g 数据包回复太长 00000000ba4eefbe00000000
  • 仅在 IE < 9 中按下“输入”时命令按钮不会提交

    我有2个
  • 在 M-x 编译中使用当前缓冲区的文件名

    我希望 emacs 使用当前缓冲区的文件名作为传递给的命令的一部分M x compile 例如 如果我正在编辑 foo rb 我想M x compile执行ruby foo rb 我尝试设置compilation command to li
  • 天数和总天数之间有什么区别?

    谁能告诉我 C 中这两个函数有什么区别 TotalDays 和 Days 因为我不确定应该在代码中使用哪一次 抱歉 这篇文章的信息量很少 但我能说的不多 由于我没有找到重复的内容 所以我在这里发表评论 始终阅读文档 http msdn mi
  • 如何在android中从互联网获取当前时间

    我正在制作一个应用程序 我想在其中从互联网获取当前时间 我知道如何使用设备获取时间System currentTimeMillis 即使经过很多搜索 我也没有得到任何关于如何从互联网获取它的线索 您可以使用以下程序从互联网时间服务器获取时间
  • MIPS 浮点:swc1 与 s.s

    我正在做一些涉及的工作MIPS汇编 我不断遇到这四个浮点加载 存储伪指令 l s l d s s s d 我在网上找到了一些文档 发现有四个 实际 指令似乎可以做同样的事情 lwc1 ldc1 swc1 and sdc1 我唯一的问题是 有
  • Java 和 Android 之间的 Base64 编码/解码错误

    我在 Java 和 Android 之间编码 解码 Base64 时遇到问题 这是我的案例 我在Java上使用ECC编写了加密 解密代码 我的代码运行得很好 然后我尝试在Java上加密字符串并在Android上解密这个加密的字符串 但失败了
  • 1-15 的正则表达式? [关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 我很难为 0 15 的数字输入组合正
  • 我怎样才能快速转换这个日期格式?

    我想转换Wed Jul 01 04 48 51 0000 2015 to 2015 07 01我在下面尝试过 但它不能很好地执行 返回零 let d Wed Jul 01 04 48 51 0000 2015 let formatter N
  • OnLocationChanged 回调永远不会被调用

    我正在尝试使用以下命令获取用户当前位置LocationManager 我做了很多研究 似乎找不到任何人有同样的问题 这OnLocationChanged回调似乎从未被调用 下面是我的各种代码和 logcat protected Locati
  • 在 Windows Phone 上部署 Sencha 触摸应用程序

    我有一个现有的 Sencha touch 项目 我想将其部署在 Windows Phone 设备上 到目前为止 我已经尝试将 Sencha touch 与 Phonegap 结合起来 通过 Phonegap 进行部署 但没有成功 据报道 由
  • .:format 在 rake 路由中意味着什么

    我输入 rake 路线 然后得到一堆像这样的 url articles id format 我的问题是 什么是 format意思是 Rails Guides Routing 文章中并不清楚 并且没有其他有用的匹配项 format在 Stac