过滤参数(基本)
class UsersController < ApplicationController
def index
respond_to do |format|
format.html do
render html: "Hello #{ user_params[:name] } user_params[:sentence]"
end
end
end
private
def user_params
if params[:name] == "john"
params.permit(:name, :sentence)
else
params.permit(:name)
end
end
end
你可以允许(或拒绝)一些参数,这样只有你想要的东西才能通过,你不会有像用户设置选项那样的意外改变。
访问/users?name=john&sentence=developer
将显示 Hello john developer
,但是访问/users?name=smith&sentence=spy
将仅显示 Hello smith
,因为:sentence
仅在你访问 john
时被允许