Различие между ссылками для изменения одной страницы на основе выбранной ссылки - PullRequest
0 голосов
/ 11 апреля 2019

Я новичок в Ruby on rails и создаю веб-приложение со страницей показа, которое должно просто отображать данные в моей базе данных на основе нажатой ссылки. Я хочу сделать так, чтобы у меня могла быть только одна страница, которая меняется в зависимости от того, какой рецепт я выбрал, но я не могу понять, как провести различие между ссылками.

1 Ответ

1 голос
/ 12 апреля 2019

Это базовый маршрут отдыха для перехода к действию show контроллера.

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

Таким образом, ваши ссылки могут выглядеть примерно так: http://example.com/recipes/2 Какой должензагрузите страницу с информацией о рецепте с идентификатором 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 %>, содержащему значения вашего объекта..

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...