Problema em form_for (alterando de start_form_tag)
|
|
Em uma view, eu tou alterando a parte depreciada de start_form_tag para form_for. Na view do new eu consegui alterar tudo com sucesso (apesar que o error_messages_for não está funcionando), pelo menos ta salvando com sucesso, porém alterei a view do edit, e o password começou a aparecer no field, mas não era para estar aparecendo.
<% if @user.admin == false && @user.id != @account.id %>
<!-- usuário não administrador não pode editar uma conta de outro usuário
sem ser a dele mesmo -->
<p>Você não tem permissão para editar outra contra sem ser a sua própria conta</p>
<% else %>
<h1>Editando: <i><%=@account.name%></i></h1>
<%= start_form_tag :action => 'update', :id => @account %>
<%= @account.password = '' %>
<p><label for="account_password">Senha Antiga</label><br/>
<%= password_field_tag "old_password" %></p>
<p><label for="account_password">Senha Nova</label><br/>
<%= password_field_tag "account[password]" %></p>
<p><label for="account_password">Re-escreva a Senha Nova</label><br/>
<%= password_field_tag "new_password" %></p>
<p><label for="account_email">E-mail</label><br/>
<%= text_field 'account', 'email' %></p>
<p><label for="account_status">Situação</label><br/>
<%= select "account", "status", [['Ativo', true], ['Inativo', false]] %></p>
<% if @user.admin == true %>
<p><label for="account_admin">Conta administador?</label><br/>
<%= select "account", "admin", [['Sim', true], ['Não', false]] %></p>
<% else %>
<p>Conta adminstrador <strong>não</strong></p>
<% end %>
<%= submit_tag 'Atualizar' %>
<%= end_form_tag %>
<p><%= link_to 'Voltar', :action => 'list' %></p>
<% end %>
Outro problema é que o model não tem os campos “new_password” e “old_password” usados para validar o password entrado, usando a tag password_field ele não consegue achar o método, porém com password_field_tag ele consegue, mas quero padronizar tudo para password_field e não password_field_tag. Se alguém puder ajudar ficaria agradecido. |

