所以我有一个rails应用程序,它使用Koudoku处理订阅购买和为用户设计。我希望我的用户在登录时被重定向到仪表板页面,除非他们正在购买订阅。
这是问题......
当访问者去购买订阅时,他们会选择一个计划并进行Koudoku检查以确定他们是否已登录或是注册用户,并提示他们登录或注册。标准的两步购买流程。完成后,它会将其重定向到结帐页面,在那里他们可以输入信用卡信息来购买他们最初点击的计划。
如果我添加设计标准after_sign_in_path_for(资源)方法,要在登录后将它们重定向到仪表板,如果它们尚未登录,则会中断购买过程。即使他们刚刚选择了计划并被提示登录,他们也会在登录后重定向到仪表板。然后他们必须回到计划页面再次选择计划。
登录后如何将现有用户和订阅所有者重定向到信息中心,除非他们正在购买计划?
答案 0 :(得分:0)
我解决了这个问题,要求访问者先成为用户,然后才能查看定价页面并选择计划。
答案 1 :(得分:-1)
您可以使用Rails会话变量来解决此问题。每当用户选择计划时,您应该在会话变量中保存用户购买状态(布尔值)。因此,登录后您可以检查会话变量以有条件地将用户重定向到目标页面。
不用担心,您可以覆盖Devise'after_sign_in_path_for(resource)'方法进行条件重定向。请参阅here