Question

For some reason in my current controller I am getting ActiveModel::ForbiddenAttributesError even though I believe I am using strong parameters just fine. Albeit I am using permit! for the time being to permit all model attributes. See code below, what am I missing

class HeuristicsController < ApplicationController

    def index
        @heuristics         = Heuristic.order(:name).page params[:page]
        @heuristic      = Heuristic.new
    end

    def create
        @heuristic = Heuristic.new(params[:heuristic])
        if @heuristic.save
            redirect_to action: 'index', :flash => {:success => "New heuristic created!" }
        else
            render 'new'
        end
    end

    def new
        @title              = "Heuristic"
        @heuristic          = Heuristic.new
    end

    private

    def heuristic_params
        params.require(:heuristic).permit!      
    end

end
Was it helpful?

Solution

i think you did not fully understand the way that strong-params work...

you have a method

def heuristic_params
    params.require(:heuristic).permit!      
end

and you are not using it

Heuristic.new(params[:heuristic])
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top