2015-01-06 3 views
0

Я использую жемчужину simple_form в проекте Ruby on Rails с бутстрапом. В вертикальной форме, когда отображается блок справки с ошибкой, у меня есть что-то вроде этого: enter image description hereОшибки в вертикальной простой форме

Как исправить класс-блок справки в CSS, чтобы переместить имя ошибки в конец всей строки без увеличения значка?

Вот кусок моего Haml:

.form-group.input-group 
     %span.input-group-addon 
     %i.fa.fa-lock 
     = f.input :password, label: false, placeholder: 'Type password' 

ответ

0

Вы можете сделать это путем изменения оболочки по умолчанию в файле конфигурации simple_form. Способ сделать это с помощью по умолчанию (без начальной загрузки) конфигурацией является изменение входов раздела по умолчанию обертки в config/initializers/simple_form.rb от:

b.use :label_input 
b.use :hint, wrap_with: { tag: :span, class: :hint } 
b.use :error, wrap_with: { tag: :span, class: :error } 

к:

b.use :label 
b.use :hint, wrap_with: { tag: :span, class: :hint } 
b.use :error, wrap_with: { tag: :span, class: :error } 
b.use :input 

Вы можете применить ту же технику загрузочную версию конфигурации.

Это сделает отдельные флажки немного странными, если у них есть ошибки, поэтому вы также захотите сделать версию обертки, которая является дубликатом исходной конфигурации, и настроить ее только для использования с типом ввода boolean , Например (снова из конфигурации по умолчанию, а не конфигурации бутстрапа):

config.wrappers :checks, class: :input, 
    hint_class: :field_with_hint, error_class: :field_with_errors do |b| 
    b.use :html5 
    b.use :placeholder 
    b.optional :maxlength 
    b.optional :pattern 
    b.optional :min_max 
    b.optional :readonly 

    ## Inputs 
    b.use :label_input 
    b.use :hint, wrap_with: { tag: :span, class: :hint } 
    b.use :error, wrap_with: { tag: :span, class: :error } 
end 
config.wrapper_mappings = { boolean: :checks } 
Смежные вопросы