Rails 8: Никаких require, только expect

В новой Rails 8 добавили метод params#expect, который заменяет params#require и делает обработку параметров ещё более безопасной и явной

# `require` и `permit` class PeopleController < ApplicationController def create Person.create(person_params) end private def person_params params.require(:person).permit(:name, :age) end end # Rails 8+: Используем `expect` class PeopleController < ApplicationController def create Person.create(person_params) end private def person_params params.expect(person: [:name, :age]) end end

С переходом на Rails 8 вы получаете:

  • Больше безопасности при работе с параметрами.
  • Более читаемый и строгий код.
33
Начать дискуссию