1
嗨,我有一個簡單的形式在這裏更新用戶的帳戶是我的控制器軌的form_for mongoid錯誤
def edit
@users = User.find(params[:id])
end
這裏是我的看法
<%= form_for :user do |f| %>
<%= f.label :first_name %> <br />
<%= f.text_field :name ,:value => @users.name%><br />
<%= f.label :last_name %> <br />
<%= f.text_field :lname ,:value => @users.lname%><br />
<%= f.label :email %> <br />
<%= f.email_field :email ,:value => @users.email%><br />
<%= f.label :id %> <br />
<%= f.text_field :id ,:value => @users.id%><br />
<br />
<%= f.submit ({:confirm => "Are you sure?"}) %>
<% end %>
當我點擊提交我得到以下mongoid錯誤
Mongoid::Errors::InvalidFind in UsersController#edit
問題: 使用nil調用Document.find無效。
摘要: Document.find預計參數爲1個或多個ID,如果提供1個ID,將返回單個文檔,否則提供多個ID的文檔數組。
解決方案: 這很可能是由於將參數直接傳遞給查找引起的,並且該參數要麼不存在,要麼從其訪問的密鑰不正確。
我是相當新手與鐵軌,這是我第一次與mongoDB刺。任何輸入都會有所幫助,謝謝。
..嘗試使用<%=的form_for @users做
invalid find
| F | %> – az7ar