Domanda

quando provo a far funzionare gli esempi di base di devise con le attuali versioni git di rails, mongomapper e devise, viene visualizzato il seguente errore:

undefined method `to_key' for #<Admin:0x23dee04> 

ecco la mia vera fonte:

4: = form_for @admin, :url => admins_path do |f| 
5:   - field_set_tag 'Update my email' do 
6:     %p= f.text_field :email 
7:     %p= error_message_on @admin, :email 

@Admin è attualmente loggato in utente ( @admin = corrente

Non sono del tutto sicuro se questo è un problema di Mongomapper, potrebbe anche essere rails3 correlato...grazie per eventuali indicazioni...

lo stesso accade se utilizzo l'equivalente erb, vedi

<%= form_for @admin, :url => { :action => "create" } do |fr| %>
<%= fr.text_field :sign_in_count %> 
<% end %>

ecco l'output completo dell'errore: http://pastie.org/871850

È stato utile?

Altri suggerimenti

ok, ecco una soluzione:

1 correzione nel modello

def to_key
  self.keys.to_a
end

2 fissare nella vista

<%= form_for :admin, @admin, :url => { :action => "create" } do |f| %>
    <%= f.text_field :sign_in_count %>
<% end %>

funzioneranno entrambi.ancora non mi è chiaro se si tratta di un problema di rails o mongomapper, ma per chiunque altro si trovi in ​​questa situazione, ecco una soluzione alternativa.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top