Se você estiver usando o formtastic
e ckeditor
gems em seu aplicativo, provavelmente notou que, em caso de falha na atualização / criação, todos os campos normais são delimitados por uma linha vermelha e os erros são exibidos para eles. Infelizmente, seus campos ckeditor não se comportam dessa forma … Para fazer funcionar, você pode adicionar este pequeno método a application_helper.rb
:
def ckeditor_input(form, field)
result = form.cktext_area field
if form.object.errors.has_key?(field)
errors = '<div class="control-group error"><span class="help-inline">'
errors += form.object.errors[field]*", "
errors += '</span></div><br/>'
return ("<div class='ck_error'>".html_safe) + result + ("</div>#{errors}".html_safe)
end
result
end
e adicione alguns estilos, por exemplo:
.ck_error {
border-color: $red;
color: $red;
vertical-align: 3px;
.help-inline {
padding-left: 160px;
}
}
Agora na visualização você pode usar ckeditor_input
assim:
= semantic_form_for @note do |f|
= f.input :title
= ckeditor_input(f, :content)
= f.action :submit