ActiveModel :: MassAssignmentSecurity :: ApiUsersController中的错误#create

时间:2012-07-10 10:40:28

标签: ruby ruby-on-rails-3

我无法创建新的api_user。我每次尝试创建它都会得到

Can't mass-assign protected attributes: utf8, authenticity_token, api_user, commit, action, controller

这是我的模型api_user.rb

class ApiUser < ActiveRecord::Base
 attr_accessible :api_key, :count, :email, :name, :organization
end

controller api_users_controller.rb

class ApiUsersController < ApplicationController
 #skip_before_filter :verify_authenticity_token

 def new
  @api_user = ApiUser.new
 end

 def create
    @api_user=ApiUser.create(params)
    render :text=>"#{@api_user.id}"
end

def destroy
    @api_user=ApiUser.find(params[:id])
    @api_user.destroy
    render :text=>"Deleted successfully"
end
 end

我正在使用Ruby 1.9.2和Rails 3.2.3

1 个答案:

答案 0 :(得分:1)

为了创建ApiUser,您应该只使用正确的参数:

@api_user=ApiUser.create(params[:api_user])

并非所有params哈希