From a92d846f62a76d6fd95a1d8b3991d3480f3c8edf Mon Sep 17 00:00:00 2001 From: Lucas Mazza Date: Sun, 7 Oct 2012 22:09:57 -0300 Subject: [PATCH] Use `lookup_model_names` instead `object_name`. https://github.com/plataformatec/simple_form/commit/b5f2ea420d5969a9f968cff97e5b894ce3ed0dae#commitcomment-1959017 --- lib/simple_form/inputs/base.rb | 2 +- test/form_builder/wrapper_test.rb | 11 +++++++++++ 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/lib/simple_form/inputs/base.rb b/lib/simple_form/inputs/base.rb index 70fe77ff..92dfeb95 100644 --- a/lib/simple_form/inputs/base.rb +++ b/lib/simple_form/inputs/base.rb @@ -83,7 +83,7 @@ module SimpleForm end def input_class - "#{object_name}_#{reflection_or_attribute_name}" + "#{lookup_model_names.join("_")}_#{reflection_or_attribute_name}" end private diff --git a/test/form_builder/wrapper_test.rb b/test/form_builder/wrapper_test.rb index edc88c52..9db97fa7 100644 --- a/test/form_builder/wrapper_test.rb +++ b/test/form_builder/wrapper_test.rb @@ -16,6 +16,17 @@ class WrapperTest < ActionView::TestCase assert_select 'div.user_name' end + test 'wrapper should add the attribute name class for nested forms' do + @user.company = Company.new(1, 'Empresa') + with_concat_form_for @user do |f| + concat(f.simple_fields_for(:company) do |company_form| + concat(company_form.input :name) + end) + end + + assert_select 'div.user_company_name' + end + test 'wrapper should add the association name class' do with_form_for @user, :company assert_select 'div.user_company'