0

Rails、mongomapper、およびdeviseから現在のgitバージョンで実行されている基本的なデバイスの例を取得しようとすると、次のエラーが表示されます。

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

ここに私の実際の情報源があります:

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 は現在ログインしているユーザーです (@admin= current_admin) コントローラーで @admin=Admin.first を使用しようとすると同じエラーが発生します

これがmongomapperの問題であるかどうかはよくわかりません.rails3に関連している可能性もあります...ポインタをありがとう...

同等のerbを使用している場合も同じことが起こります。

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

完全なエラー出力は次のとおりです: http://pastie.org/871850

4

2 に答える 2

2

ここでMongoMapperにパッチを送信しました:

http://github.com/fredwu/mongomapper/commit/6e5e531312ef98c30e33286a1f80dd000468ed07

于 2010-03-17T07:55:12.240 に答える
1

わかりました、ここに修正があります:

モデルの 1 つの修正

def to_key
  self.keys.to_a
end

2 ビューで修正

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

どちらも機能します。これがレールの問題なのかmongomapperの問題なのかはまだはっきりしていませんが、これに遭遇した他の人のために、ここに回避策があります.

于 2010-03-16T14:14:01.730 に答える