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 вы получаете:
- Больше безопасности при работе с параметрами.
- Более читаемый и строгий код.
Начать дискуссию