我正在建立一个网站,用户可以通过该网站支付所有者提供的特定服务。虽然付款流程非常相似,但它不是网上商店。
我面临的问题在于此付款过程中不同的“登录”选项。可以使用Facebook帐户登录,使用他的帐户注册帐户/登录或选择填写个人信息而无需注册。
我在考虑'消费者'表(一次没有帐户的用户),注册用户的'用户'表,带有Facebook信息的'facebook_accounts'表,以及用于链接Facebook帐户的'user_has_facebook_account'表注册用户基于共享的电子邮件地址。
但是,如果用户使用Facebook登录而没有使用密码的注册帐户,那该怎么办...这真的让我很头疼。
我有什么建议设计数据库来支持这个吗?
答案 0 :(得分:0)
您可能应该将使用Facebook登录的用户添加到Users表并为其创建默认密码,以及存储OAuth信息/密钥。
您的用户"对象应该是单一的,只是有一个不同的方法,他们如何成为"用户"简化事情
答案 1 :(得分:0)
我只会与客户一起创建一个表。在那里,您可以拥有一个包含Facebook用户ID的字段。如果有人使用Facebook登录,您可以为他创建新记录(您有来自Facebook的电子邮件地址等)。因此,您可以设置空本地密码或要求用户为您的页面设置密码。