我的应用程序实现了一个购物车,匿名用户可以在其中添加产品。仅在付款前才需要用户登录。如何实施?
主要的挑战是 Flask 必须跟踪用户(即使是匿名的)及其订单。我目前的方法是利用AnonymousUserMixin
被分配给的对象current_user
。假设是current_user
在整个会话期间不会改变。然而,我注意到一个新的AnonymousUserMixin
对象被分配给current_user
,例如,在每次浏览器页面刷新时。请注意,如果用户经过身份验证,则不会发生这种情况。
关于如何规避这个问题有什么建议吗?
无需定制AnonymousUserMixin
,您可以将购物车数据保留在会话中:
- 匿名用户向他的购物车添加了一些东西 -> 使用购物车数据更新他的会话
- 用户想要结帐 -> 将他重定向到登录页面
- 登录的用户在结帐时返回 -> 将他的购物车数据从会话中取出,并执行如果他一直登录时会执行的操作
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)