Полное руководство по ресурсам Rails: изучение методов и примеры кода

В Ruby on Rails метод resources— это мощный инструмент, упрощающий создание маршрутов RESTful для вашего приложения. Он обеспечивает краткий способ определения маршрутов для выполнения операций CRUD на определенном ресурсе. В этой статье мы рассмотрим различные методы, доступные с ключевым словом resources, и приведем примеры кода для каждого.

  1. Index:
    Метод index генерирует маршрут для отображения всех экземпляров ресурса.
# routes.rb
resources :articles
# articles_controller.rb
def index
  @articles = Article.all
end
  1. Show:
    Метод show генерирует маршрут для отображения определенного экземпляра ресурса.
# routes.rb
resources :articles
# articles_controller.rb
def show
  @article = Article.find(params[:id])
end
  1. New и Create.
    Методы new и create генерируют маршруты для отображения формы для создания нового ресурса и для обработки создания нового ресурса соответственно.
# routes.rb
resources :articles
# articles_controller.rb
def new
  @article = Article.new
end
def create
  @article = Article.new(article_params)
  if @article.save
    redirect_to @article
  else
    render 'new'
  end
end
  1. Редактирование и обновление.
    Методы редактирования и обновления генерируют маршруты для отображения формы для редактирования существующего ресурса и для обработки обновления существующего ресурса соответственно.
# routes.rb
resources :articles
# articles_controller.rb
def edit
  @article = Article.find(params[:id])
end
def update
  @article = Article.find(params[:id])
  if @article.update(article_params)
    redirect_to @article
  else
    render 'edit'
  end
end
  1. Destroy:
    Метод Destroy генерирует маршрут для удаления определенного экземпляра ресурса.
# routes.rb
resources :articles
# articles_controller.rb
def destroy
  @article = Article.find(params[:id])
  @article.destroy
  redirect_to articles_path
end

Метод resourcesв Ruby on Rails предоставляет удобный способ определения маршрутов для выполнения CRUD-операций над ресурсом. Используя различные методы, обсуждаемые в этой статье, вы можете легко создать надежное веб-приложение с минимальным количеством кода. Понимание этих методов позволит вам создавать эффективные и масштабируемые приложения Rails.