GitHub Sale: sign up for any paid plan this week and pay nothing until January 1, 2009!  [ hide ]

public
Description: Rails Plugin - soft-delete your ActiveRecord records with a deleted_at timestamp. This is a much more explicit version of ActsAsParanoid
Homepage: http://6brand.com
Clone URL: git://github.com/JackDanger/permanent_records.git
Andreas Haller (author)
Fri May 16 13:14:06 -0700 2008
commit  2d3775625d0d80aeadd9da308904789271538d18
tree    54db7170d0c8b1d2cfcef7c2bf460a79b710ed4f
parent  5bd54355812c9c39bdeecfdddcdebea1be7a83d0
name age message
file MIT-LICENSE Thu Jan 31 10:19:07 -0800 2008 initial checkin of permanent_records plugin [studioda]
file README Thu Jan 31 10:19:07 -0800 2008 initial checkin of permanent_records plugin [studioda]
file Rakefile Thu Jan 31 10:19:07 -0800 2008 initial checkin of permanent_records plugin [studioda]
file init.rb Thu Jan 31 10:19:07 -0800 2008 initial checkin of permanent_records plugin [studioda]
file install.rb Thu Jan 31 10:19:07 -0800 2008 initial checkin of permanent_records plugin [studioda]
directory lib/ Fri May 16 13:14:06 -0700 2008 has_many :dependent => :destroy should work ... [Andreas Haller]
directory tasks/ Thu Jan 31 10:19:07 -0800 2008 initial checkin of permanent_records plugin [studioda]
directory test/ Fri May 16 13:14:06 -0700 2008 has_many :dependent => :destroy should work ... [Andreas Haller]
file uninstall.rb Thu Jan 31 10:19:07 -0800 2008 initial checkin of permanent_records plugin [studioda]
README
PermanentRecords
================

This plugin prevents any of your records from being destroyed casually.
Any model with a deleted_at datetime column will have that column set rather than being deleted.

Usage
=======

User.find(3).destroy          # sets the 'deleted_at' attribute to Time.now and returns a frozen record
User.find(3).destroy(:force)  # executes the real destroy method, the record will be removed from the database
User.delete_all               # bye bye everything

There are also two named scopes provided for easily searching deleted and not deleted records:

User.send :with_deleted { User.find(:all) }     # only returns deleted records.
User.send :with_not_deleted { User.find(:all) } # you guessed it.

These are named so as to work smoothly with other scoping plugins like scope_out.


Copyright (c) 2008 Jack Danger Canty of adPickles Inc., released under the MIT license