2016-02-22 72 views
0

我剛剛開始使用Rails和設計,我有一項任務,只允許用戶通過邀請現有用戶註冊。我選擇設計可愛的寶石,並陷入了一些不清楚的文檔。我有這樣的代碼:如何使用devise-invitable

def invitationForm 
    @nuser = User.new 
end 
def invite_user 
    @user = User.invite!({:email => @nuser.email}, current_user) 
end 

凡​​呈現形式:

<%= form_for @nuser, url: {action: "invite_user"} do |f| %> 
    <%= f.text_field :email %> 
    <%= f.submit "Invite" %> 
<% end %> 

畢竟我真的收到此錯誤:

RuntimeError in User#invite 

Showing //invite.html.erb where line #2 raised: 

Could not find a valid mapping for nil 

我在做什麼錯了,我應該做?

回答

1

我想你的問題之一可能是在這裏:

<%= form_for @nuser, url: {action: "invite_user"} do |f| %> 

您的形式指向invite,而不是你所創建的invite_user方法。

+0

謝謝,但仍然是相同的錯誤。 –

0

好的,這筆交易是在設置,不知何故。創建新項目並從頭開始,所有工作都很好。