Permit 的未知属性 'utf8'

Unknown attribute 'utf8' for Permit

我在 ActiveAdmin 控制器内部工作。我正在尝试传递我的 permitted_params 以及当前日期和当前登录的用户。但是,每当我提交时,我都会收到 Unknown attribute 'utf8' for Permit 错误。

admin/permit.rb

form do |f|
    f.inputs do
        f.input :vehicle, :collection => Vehicle.all.map{ |vehicle| [vehicle.license_number]}
        f.input :permit_id
        f.input :date_issued, as: :date_picker
        f.input :issued_by
    end
    f.actions
end

controller do
    def new
        @permit = Permit.new
        @vehicle = @permit.build_vehicle 
    end 

    def create
         #@permit = Permit.new
         vehicle = Vehicle.find_by(permitted_params[:vehicle])
         @permit = current_user.permit.build(permitted_params.merge(date_entered: Date.today, 
            entered_by: current_admin_user.email))
         @permit.update(vehicle: vehicle)
         super
    end

    def permittted_params
        params.require(:permit).permit(:permit_id, :date_issued, :issued_by, :date_entered, :entered_by, vehicle_attributes: [:license_number])
    end

    def set_permit
        @permit = Permit.find(params[:id])
    end
end

有人知道我为什么会收到这个错误吗?我在正常的 rails 应用程序中没有收到此错误,它是 运行 几乎相同的代码。谢谢

编辑

这是应用程序跟踪

app/admin/permit.rb:61:in `create'
Request

Parameters:

{"utf8"=>"✓","authenticity_token"=>"zw3Px+gEOvp2UDufgiBNyG0yShTHQYBIsOK+WWj7wiYkMNkR3aLku5TMBxK5b0mQoZvKr+w6YgYZVPGxURtH0A==",
 "permit"=>{"permit_id"=>"ST-5555", "date_issued"=>"2018-11-24", 
"issued_by"=>"Nate"},
 "commit"=>"Create Permit"}

我用postman的时候出现这个错误。 设置 headers : enctype multipart/form-data; charset=utf-8

我会避免使用 Permit 作为模型名称,请尝试使用 VehiclePermit。

ActiveAdmin 有自己的 permit_params 强参数宏,参见 https://activeadmin.info/2-resource-customization.html。有一个名为 :permitted_params 的命名空间设置,默认情况下包括 :utf8,因此我不会将其用作控制器方法名称。