public
Description: Disables mass assignment by default, requiring attr_accessible to specify safe attributes. Also improves mass-assignment related logging.
Homepage: http://www.railspikes.com
Clone URL: git://github.com/eac/inaccessible_attributes.git
name age message
file MIT-LICENSE Fri Jul 25 16:22:49 -0700 2008 INitial commit 2! [eac]
file README Fri Jul 25 15:40:56 -0700 2008 Initial commit [eac]
file Rakefile Fri Jul 25 16:22:49 -0700 2008 INitial commit 2! [eac]
file init.rb Fri Jul 25 16:22:49 -0700 2008 INitial commit 2! [eac]
file install.rb Fri Jul 25 16:22:49 -0700 2008 INitial commit 2! [eac]
directory lib/ Fri Jul 25 16:22:49 -0700 2008 INitial commit 2! [eac]
directory tasks/ Fri Jul 25 16:22:49 -0700 2008 INitial commit 2! [eac]
directory test/ Fri Jul 25 16:22:49 -0700 2008 INitial commit 2! [eac]
file uninstall.rb Fri Jul 25 16:22:49 -0700 2008 INitial commit 2! [eac]
README
Inaccessible Attributes
=======================

This plugin disables mass assignment by default, and prevents the use of attr_protected. Attributes safe for mass 
assignment must be specified using attr_accessible. Logging is also improved to help prevent attr_accessible-related 
errors:
* A message is displayed during migrations as a reminder to use attr_accessible for newly added attributes.
* The 'removed from mass assignment' logger warning is more noticeable in development.

Disabling Inaccessible Attributes
=================================
Some third party/legacy code may not play nice with this plugin.
The behavior can be disabled with the disable_mass_assignment method:
=> ThirdPartyModel.send(:disable_mass_assignment, false)

In your own classes, the plugin must be disabled before the offending code is mixed in.
class MyModel < ActiveRecord::Base
  disable_mass_assignment false
  include BehaviorWithAttrProtected 

  ...
end

Keep a look out for potential mass assignment problems during testing:
tail -f log/test.log | grep WARNING

Copyright (c) 2008 Eric Chapweske, released under the MIT license