aboutsummaryrefslogtreecommitdiffstats
path: root/activemodel
diff options
context:
space:
mode:
authorPaul Gallagher <gallagher.paul@gmail.com>2011-06-19 10:21:15 +0800
committerPaul Gallagher <gallagher.paul@gmail.com>2011-06-19 10:21:15 +0800
commit2b3d67fdaf2c78a5447316a90c54c7c9c520c71a (patch)
tree19cf0443c671ddf015c12b85e7022a2bd428b9ba /activemodel
parentb0d59907f733841280095b16c98a95574b3a0938 (diff)
parent6c705e33ef78d28d5d964a03edc627f31d7f8c25 (diff)
downloadrails-2b3d67fdaf2c78a5447316a90c54c7c9c520c71a.tar.gz
rails-2b3d67fdaf2c78a5447316a90c54c7c9c520c71a.tar.bz2
rails-2b3d67fdaf2c78a5447316a90c54c7c9c520c71a.zip
Merge remote branch 'rails/master' into pg_schema_fu
Diffstat (limited to 'activemodel')
-rw-r--r--activemodel/CHANGELOG3
-rw-r--r--activemodel/lib/active_model/mass_assignment_security/sanitizer.rb2
-rw-r--r--activemodel/lib/active_model/naming.rb7
-rw-r--r--activemodel/lib/active_model/translation.rb5
-rw-r--r--activemodel/test/cases/attribute_methods_test.rb1
-rw-r--r--activemodel/test/cases/translation_test.rb10
6 files changed, 9 insertions, 19 deletions
diff --git a/activemodel/CHANGELOG b/activemodel/CHANGELOG
index b1ad315c46..c38349b95e 100644
--- a/activemodel/CHANGELOG
+++ b/activemodel/CHANGELOG
@@ -2,6 +2,9 @@
*Rails 3.1.0 (unreleased)*
+* Alternate I18n namespace lookup is no longer supported.
+ Instead of "activerecord.models.admins.post", do "activerecord.models.admins/post" instead [José Valim]
+
* attr_accessible and friends now accepts :as as option to specify a role [Josh Kalderimis]
* Add support for proc or lambda as an option for InclusionValidator,
diff --git a/activemodel/lib/active_model/mass_assignment_security/sanitizer.rb b/activemodel/lib/active_model/mass_assignment_security/sanitizer.rb
index ee43a6694f..bb0526adc3 100644
--- a/activemodel/lib/active_model/mass_assignment_security/sanitizer.rb
+++ b/activemodel/lib/active_model/mass_assignment_security/sanitizer.rb
@@ -19,7 +19,7 @@ module ActiveModel
removed_keys = attributes.keys - sanitized_attributes.keys
process_removed_attributes(removed_keys) if removed_keys.any?
end
-
+
def process_removed_attributes(attrs)
raise NotImplementedError, "#process_removed_attributes(attrs) suppose to be overwritten"
end
diff --git a/activemodel/lib/active_model/naming.rb b/activemodel/lib/active_model/naming.rb
index c7b9c41f46..4c1a82f413 100644
--- a/activemodel/lib/active_model/naming.rb
+++ b/activemodel/lib/active_model/naming.rb
@@ -21,7 +21,7 @@ module ActiveModel
@partial_path = "#{@collection}/#{@element}".freeze
@param_key = (namespace ? _singularize(@unnamespaced) : @singular).freeze
@route_key = (namespace ? ActiveSupport::Inflector.pluralize(@param_key) : @plural).freeze
- @i18n_key = self.underscore.tr('/', '.').to_sym
+ @i18n_key = self.underscore.to_sym
end
# Transform the model name into a more humane format, using I18n. By default,
@@ -35,9 +35,8 @@ module ActiveModel
@klass.respond_to?(:i18n_scope)
defaults = @klass.lookup_ancestors.map do |klass|
- [klass.model_name.i18n_key,
- klass.model_name.i18n_key.to_s.tr('.', '/').to_sym]
- end.flatten
+ klass.model_name.i18n_key
+ end
defaults << options[:default] if options[:default]
defaults << @human
diff --git a/activemodel/lib/active_model/translation.rb b/activemodel/lib/active_model/translation.rb
index c615311692..6d64c81b5f 100644
--- a/activemodel/lib/active_model/translation.rb
+++ b/activemodel/lib/active_model/translation.rb
@@ -44,9 +44,8 @@ module ActiveModel
# Specify +options+ with additional translating options.
def human_attribute_name(attribute, options = {})
defaults = lookup_ancestors.map do |klass|
- [:"#{self.i18n_scope}.attributes.#{klass.model_name.i18n_key}.#{attribute}",
- :"#{self.i18n_scope}.attributes.#{klass.model_name.i18n_key.to_s.tr('.', '/')}.#{attribute}"]
- end.flatten
+ :"#{self.i18n_scope}.attributes.#{klass.model_name.i18n_key}.#{attribute}"
+ end
defaults << :"attributes.#{attribute}"
defaults << options.delete(:default) if options[:default]
diff --git a/activemodel/test/cases/attribute_methods_test.rb b/activemodel/test/cases/attribute_methods_test.rb
index 022c6716bd..9840e3364c 100644
--- a/activemodel/test/cases/attribute_methods_test.rb
+++ b/activemodel/test/cases/attribute_methods_test.rb
@@ -78,7 +78,6 @@ class AttributeMethodsTest < ActiveModel::TestCase
test '#define_attribute_method generates attribute method with invalid identifier characters' do
ModelWithWeirdNamesAttributes.define_attribute_method(:'a?b')
- ModelWithWeirdNamesAttributes.define_attribute_method(:'a?b')
assert_respond_to ModelWithWeirdNamesAttributes.new, :'a?b'
assert_equal "value of a?b", ModelWithWeirdNamesAttributes.new.send('a?b')
diff --git a/activemodel/test/cases/translation_test.rb b/activemodel/test/cases/translation_test.rb
index 838956bc98..1b1d972d5c 100644
--- a/activemodel/test/cases/translation_test.rb
+++ b/activemodel/test/cases/translation_test.rb
@@ -76,15 +76,5 @@ class ActiveModelI18nTests < ActiveModel::TestCase
Person.model_name.human(options)
assert_equal({:default => 'person model'}, options)
end
-
- def test_alternate_namespaced_model_attribute_translation
- I18n.backend.store_translations 'en', :activemodel => {:attributes => {:person => {:gender => {:attribute => 'person gender attribute'}}}}
- assert_equal 'person gender attribute', Person::Gender.human_attribute_name('attribute')
- end
-
- def test_alternate_namespaced_model_translation
- I18n.backend.store_translations 'en', :activemodel => {:models => {:person => {:gender => 'person gender model'}}}
- assert_equal 'person gender model', Person::Gender.model_name.human
- end
end