2010-03-16 4 views
0

quand je suis en train d'obtenir les exemples CONCEVOIR de base en cours d'exécution avec les versions git actuelles de rails, mongomapper et mettre au point, j'ai l'erreur suivante apparaît:mongomapper, rails3 bord: méthode non définie to_key » sur form_for

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

ici est ma source réelle:

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 est l'utilisateur actuellement connecté (@ admin = current_admin) la même erreur se produit lorsque vous essayez d'utiliser @ admin = Admin.first dans le contrôleur

je ne suis pas tout à fait sûr que ce soit un problème de mongomapper, pourrait aussi être rails3 liés ... merci pour tous les pointeurs ...

la même chose se produit si j'utilise l'équivalent Erb, voir

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

ici est la sortie d'erreur complète: http://pastie.org/871850

+0

est ici le fil j'ai commencé sur le groupe google mongomapper: http://groups.google.com/group/mongomapper/browse_thread/thread ?/3525e90db4149706 PLI = 1 – z3cko

+0

ok, un peu plus d'informations sur ce sujet après quelques recherches: to_key est de ActiveModel voir http://github.com/rails/rails/commits/master/activerecord/lib/active_record/attribute_methods /primary_key.rb certaines personnes chez authlogic en discutaient. Je pense que cela pourrait être une lecture intéressante: "Il y a quelques changements dans la manipulation de la clé primaire dans ActiveModel Ils ont changé la clé de to_key." http://github.com/binarylogic/authlogic/issues/issue/101/#comment_142986 – z3cko

Répondre

1

ok, voici une solution:

1 correctif dans le mode l

def to_key 
    self.keys.to_a 
end 

2 fix dans la vue

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

fonctionnera à la fois. Je ne sais toujours pas si c'est une question de rails ou de mongomapper, mais pour quelqu'un d'autre, voici une solution de contournement.

+0

ok comme fred indiqué ci-dessous, mon patch est en fait des conneries et le sien est le chemin à parcourir;) merci! – z3cko

Questions connexes