区分链接以根据所选链接更改一页

时间:2019-04-11 14:40:18

标签: ruby-on-rails

我是Ruby on Rails的新手,并且正在制作一个带有显示页面的Web应用程序,该页面应仅根据所单击的链接简单地显示数据库中的数据。我想让它只有一个页面,该页面会根据我选择的食谱进行更改,但我不知道如何区分链接。

1 个答案:

答案 0 :(得分:1)

这是转到控制器的显示操作的基本的轻松路线。

# config/routes.rb
Rails.application.routes.draw do
  get '/recipes/:recipe_id', to: 'recipes_controller#show'
end

因此您的链接可能类似​​于:http://example.com/recipes/2 哪个页面应加载显示ID为2的食谱信息的页面

现在这是假设您有一个控制器 recipes_controller.rb ,该控制器具有 show 动作,可为您提供有关该食谱的信息

# app/controllers/recipes_controller.rb
class RecipesController < ApplicationController
  ...
  def show
    @recipe = Recipe.find(params[:recipe_id])

    render 'show'
  end
end

现在在views/recipes/show.html.erb模板中或在 show 操作中渲染的任何视图中,您都可以访问包含对象值的<%= @recipe %>