0

我有以下 mogoid 文档定义/类:

class Exercise
  include Mongoid::Document
  field :name, :type => String
  field :description, :type => String

  belongs_to :group

  validates_presence_of :name, :description
end

然后我有以下控制器和保存方法:

class ExercisesController < ApplicationController
  respond_to :json

  def create
    @exercise = Exercise.create(params[:exercise])
    @exercise.save!
    respond_with @exercise
  end
end

这对我来说似乎是错误的,并且对批量分配问题持开放态度。

人们通常如何防止这种情况发生,使用强参数 gem 会是一个好主意吗?

4

2 回答 2

1

是的,您应该使用 strong_parameters gem,它将是 rails 4 中的默认质量分配保护

于 2012-08-22T08:04:35.533 回答
0

您可以使用 attr_accessible 作为“标准”保护。当然,这仍然有一个缺点,即您向接口公开了很多字段,而您可能只想公开一些字段,但需要在其他控制器中公开这些字段。

于 2012-07-21T11:40:19.447 回答