我将Devise用于我的用户模型。我希望当用户取消他的帐户时:
Unhappy? <%= link_to "Cancel my account", registration_path(resource_name), :data => { :confirm => "Are you sure?" }, :method => :delete %>
还执行一些其他任务,例如在我的情况下取消用户的Stripe订阅。所以我不确定我做的是否可以,但我在user_controller.rb中创建了这个方法:
def destroy
@user = current_user
customer = Stripe::Customer.retrieve(@user.stripe_customer_token)
customer.cancel_subscription()
if @user.destroy
flash.alert = "Your subscription and account has been cancelled successfully!"
redirect_to root_path
end
end
我认为这种方法甚至没有执行,因为当我取消我的帐户时,flash消息不同。
我哪里错了?这可能吗?因为我觉得我尝试做的事情是错误的。
谢谢。
答案 0 :(得分:1)
您应该链接到销毁操作而不是registration_path
Unhappy? <%= link_to "Cancel my account", user_path(user), :data => { :confirm => "Are you sure?" }, :method => :delete %>