gpt4 book ai didi

ruby-on-rails - Ruby on Rails - 不使用资源路由的路径变量

转载 作者:太空宇宙 更新时间:2023-11-03 17:06:49 25 4
gpt4 key购买 nike

我有一个 Controller ,我们就称它为 FruitsController,它抓取所有水果并将其发送到索引 View 。在 View 中,我想显示指向这些水果的各个页面的链接。我使用的格式是:

<% @fruits.each do |fruit| %>
<%= link_to fruit.name, fruit_path(fruit) %>
<% end %>

当我有路由 resources :fruits 时这很有效,但我不想要用于删除、保存和更新的路由,所以我不想使用 resources 。但是,当我只是执行单独的路线来显示所有和单独的水果时,我得到错误 fruit_path function is not defined,当我使用函数 fruits_path 时它可以工作,但它只是将句点附加到路径,如 /fruits.1。如何在不使用资源的情况下使用 fruit_path 函数?谢谢。

最佳答案

您可以通过多种方式做到这一点;在您的 config/routes.rb 中,以下任何一项都应该有效:

resources :fruits, only: :show

resources :fruits, except: [:index, :edit, :destroy, :update] # etc

get 'fruits/:id', to: 'fruits#show', as: :fruit

scope controller: :fruits do
get 'fruits/:id' => :show, as: :fruit
end

关于ruby-on-rails - Ruby on Rails - 不使用资源路由的路径变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34192315/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com