Ruby · Intermediário · Inglês · Técnico
strong parameters
Mecanismo do Rails em que o controller declara quais parâmetros podem ir para atribuição em massa, com require e permit (ou expect, no Rails 8). Barra campos indevidos.
Onde usar
Aparece em todo create e update, em métodos privados como post_params. Ao adicionar uma coluna, lembre de liberá-la ou ela será ignorada.
Em código
class PostsController < ApplicationController
private
def post_params
params.expect(post: [:titulo, :texto])
end
endExemplos
Permit only the fields the form really sends.
Libere só os campos que o formulário realmente envia.
The new column is ignored until you add it to the permit list.
A coluna nova é ignorada até você incluí-la na lista do permit.
Cuidado
Nunca use permit! sem restrição nem libere campos como admin ou role vindos do usuário; isso reabre a falha de mass assignment.
Sinônimos
parâmetros fortes