rails gem Devise Invitable接受视图问题

时间:2011-02-12 18:42:07

标签: ruby-on-rails devise invitation

我希望能够访问邀请/接受路由中的用户信息。当我去表格并使用

<%= resource.name %>

它不会显示用户。它似乎也没有在接受期间加载用户。有没有简单的方法向用户显示有关邀请的一些信息?

1 个答案:

答案 0 :(得分:0)

我可以想到两个选择:

  1. 您可以覆盖设计邀请控制器,请参阅: Anyone have experience with devise_invitable?

  2. 在我的情况下,我想传递邀请者的名字。

    • 我将一个整数属性'invitor'添加到User类。这是邀请者人的身份。不要忘记在模型中添加'invitor'作为attr_accessible。
    • 我在User类中已经有了'name'字符串属性。
    • 在app / views / {users | devise} /invitations/new.html.erb(路径可能因视图生成方式而异)添加隐藏的表单字段和登录用户(invitor):

    ...&lt;%= f.text_field:invitor,:value =&gt; current_user.id,:hidden =&gt; true%&gt; ...

    • 在电子邮件文本app / views / {users | devise} /mailer/invitation.html.erb中我可以参考邀请函:

    ...&lt;%=(User.find @ resource.invitor).name%&gt;邀请您加入&lt;%= root_url%&gt;,您可以通过以下链接接受....

  3. 不那么优雅,但它有效。欢迎使用devise_invitable gem更新后的改进。