diff --git a/CHANGELOG.rdoc b/CHANGELOG.rdoc index 858e5b6d..9f9b9674 100644 --- a/CHANGELOG.rdoc +++ b/CHANGELOG.rdoc @@ -4,6 +4,7 @@ * enhancements * Added devise lockable (by github/mhfs) * Warden 0.9.0 compatibility + * Mongomapper 0.6.10 compatibility == 0.8.2 diff --git a/generators/devise_install/templates/devise.rb b/generators/devise_install/templates/devise.rb index bee57a81..ea2d6adc 100644 --- a/generators/devise_install/templates/devise.rb +++ b/generators/devise_install/templates/devise.rb @@ -54,7 +54,8 @@ Devise.setup do |config| # config.unlock_in = 1.hour # ==> General configuration - # Load and configure the ORM. Supports :active_record, :data_mapper and :mongo_mapper. + # Load and configure the ORM. Supports :active_record (default), :mongo_mapper + # (requires mongo_ext installed) and :data_mapper (experimental). # require 'devise/orm/mongo_mapper' # config.orm = :mongo_mapper diff --git a/lib/devise/orm/data_mapper.rb b/lib/devise/orm/data_mapper.rb index f460cb1c..277f59f4 100644 --- a/lib/devise/orm/data_mapper.rb +++ b/lib/devise/orm/data_mapper.rb @@ -12,7 +12,7 @@ module Devise end def self.included_modules_hook(klass, modules) - klass.send :extend, self + klass.send :extend, self klass.send :include, InstanceMethods yield diff --git a/lib/devise/orm/mongo_mapper.rb b/lib/devise/orm/mongo_mapper.rb index 35b5b540..7826c7d2 100644 --- a/lib/devise/orm/mongo_mapper.rb +++ b/lib/devise/orm/mongo_mapper.rb @@ -1,8 +1,19 @@ module Devise module Orm module MongoMapper + module InstanceMethods + def save(options={}) + if options == false + super(:validate => false) + else + super + end + end + end + def self.included_modules_hook(klass, modules) - klass.send :extend, self + klass.send :extend, self + klass.send :include, InstanceMethods yield modules.each do |mod| diff --git a/test/orm/mongo_mapper.rb b/test/orm/mongo_mapper.rb index 56d57e6a..2401360c 100644 --- a/test/orm/mongo_mapper.rb +++ b/test/orm/mongo_mapper.rb @@ -16,6 +16,5 @@ class ActiveSupport::TestCase setup do User.delete_all Admin.delete_all - Account.delete_all end end \ No newline at end of file