Про метод params в Ruby

У Ruby метод params використовується для доступу до параметрів, які надходять у веб-запитах, наприклад, в HTTP запитах у веб-додатках на Ruby on Rails, Sinatra. Коли ви взаємодієте з веб-додатком, наприклад, коли ви відправляєте форму або робите AJAX-запит, дані, які ви передаєте, стають доступними у веб-додатку через об’єкт params.

Об’єкт params є об’єктом типу Hash і містить пари ключ-значення, де ключі - це імена параметрів, а значення - це дані, що надходять у цих параметрах. Використовуючи params, ви можете отримати доступ до даних, надісланих користувачем, і використовувати їх у вашому додатку.

Наприклад, у Rails контролері ви можете отримати доступ до параметрів через об’єкт params. Наприклад:

class UsersController < ApplicationController
  def create
    @user = User.new(user_params)
    if @user.save
      # код для успішного створення користувача
    else
      # код для обробки помилки
    end
  end

  private

  def user_params
    params.require(:user).permit(:name, :email, :password)
  end
end

У цьому прикладі метод user_params використовує методи require та permit для фільтрації параметрів із об’єкта params. Метод require(:user) вимагає, щоб у params був присутній ключ :user, а метод permit вказує, які параметри можуть бути використані для масового присвоєння атрибутів моделі. Це допомагає захистити ваш додаток від атак типу “Mass Assignment”.

Отже, params - це важливий механізм для отримання доступу до даних, що надходять від користувачів у веб-додатках на Ruby on Rails .