簡體   English   中英

Rails - link_to與自定義路由

[英]Rails - link_to with custom route

我是Rails的新手所以請耐心等待。

我想在我的食堂模型上實現“喜歡”,所以我在我的食堂資源中創建了一個自定義路線

resources :canteens do
  resources :meals
  resources :comments
  match "/like", :to => "canteens#like", :as => "like"
end

因此在canteens控制器中創建了這個動作,我只是增加一個計數器

def like    
  canteen = Canteen.find(params[:canteen_id])
  Canteen.increment_counter("likes_count", canteen.id)
  redirect_to canteen
end

所以,手動輸入URL localhost:3000 / canteens / 1 / like工作得很好,但顯然我想創建一個按鈕,所以我做了一個

<h2>Likes count</h2>
<p><%= @canteen.likes_count %> likes</p>
<p><%= link_to "Like this canteen", canteen_like_path %></p>

它不起作用。 我檢查了耙路線,它就在那里(canteen_like)。 我究竟做錯了什么?

您必須將Canteen對象傳遞給路徑。 如果你不這樣做,Rails不知道你的意思是哪個食堂:

<%= link_to "Like this canteen", canteen_like_path(@canteen) %>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM