【发布时间】:2020-06-07 19:53:59
【问题描述】:
我的路由文件中有这一行:
resources :tags
我需要添加一条路线来一次性删除所有标签。我如何将它添加到我的路由文件中,并且相应的操作是否在同一个控制器中?
【问题讨论】:
-
您可以随意设置。我不建议尝试找到一些方法来破解
resources :tags位,只需添加一个新路由并设置相应的控制器方法来处理您想要它执行的操作,您就可以开始了。仅仅因为您正在删除标签并不意味着它必须在标签控制器中,尽管由于它是如此密切相关,因此将它放在那里可能会有所帮助,但这实际上取决于您的应用程序。不过它可以去任何地方。 -
@RockwellRice 因此,如果我将链接写为:
<%= link_to "Delete all tags", admin_tags_path, method: :delete, data: { confirm: 'Are you sure?' } %>。资源 :tags 是否会在仅以 params[:id] 为条件的情况下破坏操作?或者,如上所述,我需要单独的match 'tags', to: 'tags#destroy_all', via: :delete行吗? -
您很可能需要一个单独的操作,除非您专门为每个标签发送请求,例如在循环或其他内容中,但恕我直言,这不是一个好主意。我认为要获得明确的答案,您需要提供有关您尝试设置的内容的更多详细信息。
标签: ruby-on-rails routes crud