Хамл если еще гнездится - PullRequest
       0

Хамл если еще гнездится

3 голосов
/ 05 ноября 2010

Как вы можете сделать это, не повторяя код после .text.error и .text?


     -if f.object.errors.any?
      .text.error 
        = f.label :email 
        = f.text_field :email
        %p#foo= "Escriba el e-mail"
        = render 'shared/error_messages', :object => f.object, :param => :email
    -else
      .text
        = f.label :email 
        = f.text_field :email
        %p#foo= "Escriba el e-mail"
        = render 'shared/error_messages', :object => f.object, :param => :email

    -if f.object.errors.any?
      .text.error
        = f.label :password
        = f.password_field :password
        = render 'shared/error_messages', :object => f.object, :param => :password
    -else
      .text.error
        = f.label :password
        = f.password_field :password
        = render 'shared/error_messages', :object => f.object, :param => :password   

1 Ответ

5 голосов
/ 05 ноября 2010

Попробуйте

-["email", "password"].each do |param|
  .text{:class => f.object.errors.any? ? "error" : nil}
    = f.label param.to_sym 
    = f.text_field param.to_sym
    %p#foo= "Escriba el #{param}"
    = render 'shared/error_messages', :object => f.object, :param => param.to_sym
...