提问人:Grant 提问时间:9/2/2023 最后编辑:Grant 更新时间:9/2/2023 访问量:35
Rails Devise Invitable gem 重新发送邀请
Rails Devise Invitable gem resend invitation
问:
我需要在我的应用上向用户重新发送邀请。我知道 Devise Invitable 有一个方法,所以调用会用新令牌重新发送新邀请,但我的问题是我如何实际编写表单?resend_invite
invite!
最好制作表单,这样我就可以将其放在应用程序上需要的几个位置,但是如何编写自定义表单按钮或link_to可以注入代码库的文本。任何最终会召唤的东西remote: true
User.invite!
现在,我有这样的暴行:
<% resource = access_list.user %>
<% resource_name = :user %>
<%= form_for(resource, as: resource_name, url: registration_path(resource_name), html: { method: :put }) do |f| %>
<%= f.hidden_field :resend_invite, value: true %>
<%= f.hidden_field :resend_user, value: access_list.user.id %>
<div class="actions">
<%= f.submit "resend invite" %>
</div>
<% end %>
这触及了这一点:
def update
if params[:user][:resend_invite] == "true"
@resend_user = User.find(params[:user][:resend_user])
@resend_user.invite!
flash[:alert] = "We've resent an email invitation to #{@resend_user.email}"
end
super
end
这可行,但显然是最糟糕的方法,因为它只是搭载了设计控制器,而不是devise_invitable控制器。如何让它接触devise_invitable控制器?
答: 暂无答案
评论