Reputation: 275
How can I change params inside controller?
When I click the accept it will pass the status is approved but if diff <= 0
change status to rejected
View
<%= link_to 'Accept', friend_path(s, :request => {:status => 'Accepted'}), method: :put %>
into this
if diff <= 0
req_params[:status] = "Rejected"
@request.update(req_params)
end
end
private
def req_params
params.require(:request).permit(:status)
end
end
Upvotes: 6
Views: 11187
Reputation: 356
To modify your status param, you need to do the following:
params[:request][:status] = 'Rejected'
or
req_params[:request][:status] = 'Rejected'
Because your request take params like this:
Parameters => { some_param => 'Something', required => { permited1 => 'bla',
permited2 => 'bla2',
... } }
I hope that helps you
Upvotes: 10