ruby-on-rails - 如何创建链接以删除 Rails 中的操作(使用路径和 link_to

到目前为止,我已经设法想出了这段代码:

  1   <% @projects.each do |p| %>
  2       <%= link_to p.name, project_path(p) %>
  3       <%= link_to "edit", edit_project_path(p) %>
  4       <%= link_to "delete", project_path(p), :method => :delete %>
  5   <% end %>

当我点击“删除”链接时,它会将我带到 destroy.html.erb,而不是 delete.html.erb。它还与 Controller “销毁”操作通信,而不是与“删除”操作通信。此外,URL 类似于/projects/1(没有/delete 或/destroy)。这里有什么问题?这是创建删除链接的最佳方式吗?

最佳答案

这是 Rails 的正确行为。 :delete 方法链接到 destroy 操作并且不向 URL 添加任何内容——正确的操作由 HTTP 动词连接。有关 Rails 路由结构和默认设置的更多信息,请查看 the Rails routing guide .

关于ruby-on-rails - 如何创建链接以删除 Rails 中的操作(使用路径和 link_to)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9711356/

相关文章:

typo3 - 将 locallang 值插入 TypoScript [stdWrap]

shell - 映射 lynx 中的键以运行 shell 命令

php - 将 unicode 字符写入 php 中的文件 - 不重复

c# - 将文件从 Azure Blob 同步到本地

c# - StackOverflow 与 TryValidateObject 如果对象是有效的

spring-mvc - 如何在 spring MVC 应用程序中的真实请求之外激活请求范围?

assembly - MIPS 从内存地址返回值

php - 谷歌图像搜索 API

php - 根据下拉列表中的更改更改 GridView 中的数据

qt - 来自 QProcess 的标准输出离实时很远