Fix error_messages_for when instance variable names are given.
Signed-off-by: Joshua Peek <josh@joshpeek.com>
This commit is contained in:
parent
e714b499cc
commit
9fbb2c571b
@ -191,13 +191,13 @@ def error_messages_for(*params)
|
|||||||
options = params.extract_options!.symbolize_keys
|
options = params.extract_options!.symbolize_keys
|
||||||
|
|
||||||
objects = Array.wrap(options.delete(:object) || params).map do |object|
|
objects = Array.wrap(options.delete(:object) || params).map do |object|
|
||||||
unless object.respond_to?(:to_model)
|
object = instance_variable_get("@#{object}") unless object.respond_to?(:to_model)
|
||||||
object = instance_variable_get("@#{object}")
|
object = convert_to_model(object)
|
||||||
object = convert_to_model(object)
|
|
||||||
else
|
if object.class.respond_to?(:model_name)
|
||||||
object = object.to_model
|
options[:object_name] ||= object.class.model_name.human.downcase
|
||||||
options[:object_name] ||= object.class.model_name.human
|
|
||||||
end
|
end
|
||||||
|
|
||||||
object
|
object
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -45,6 +45,9 @@ class Name < String
|
|||||||
# it will underscore then humanize the class name (BlogPost.human_name #=> "Blog post").
|
# it will underscore then humanize the class name (BlogPost.human_name #=> "Blog post").
|
||||||
# Specify +options+ with additional translating options.
|
# Specify +options+ with additional translating options.
|
||||||
def human(options={})
|
def human(options={})
|
||||||
|
return @human unless @klass.respond_to?(:lookup_ancestors) &&
|
||||||
|
@klass.respond_to?(:i18n_scope)
|
||||||
|
|
||||||
defaults = @klass.lookup_ancestors.map do |klass|
|
defaults = @klass.lookup_ancestors.map do |klass|
|
||||||
klass.model_name.underscore.to_sym
|
klass.model_name.underscore.to_sym
|
||||||
end
|
end
|
||||||
|
Loading…
Reference in New Issue
Block a user