首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在设置users表时,什么是好的实践?看一些新手教程,但不知道如何“真正”做好它。

在设置users表时,什么是好的实践?看一些新手教程,但不知道如何“真正”做好它。
EN

Stack Overflow用户
提问于 2016-12-01 05:27:25
回答 1查看 40关注 0票数 3

我正在修改构建一个连接到数据库的rest。我正在学习教程,但是表的设置都是非常基本的,我的问题之一就是在“现实世界”中,它的完成方式要复杂得多,而且不同:(

但是,我想知道我的实际应用程序(非常小)如何正确地设置User表?

例如,我已经将主键设置为userid,因为这一点永远不会改变。对用户Is使用long可以吗?

另外,把一堆与用户相关的东西放在一起还行吗..在用户表中?我知道这是个愚蠢的问题。例如,我想知道用户是否已经注册了该服务,所以isMember。或者,是用户注册了快速服务,所以hasFastService。或者,用户标识是否应该将这些内容放入UserAttributes表中?

最后,我查找了UUID,我想知道这些UUID在哪里,哪些场景,等等。

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-12-01 05:39:23

我将根据我最近在一个项目中创建用户表的经验来回答这个问题。你需要注意的事情基本上是:

  1. 身份验证:在创建user表之前,确定您的登录过程和诸如凭据字段、用户类型(admin/来宾/normal)、是否需要OAuth等内容。例如,您是否需要用户名/密码来验证或电子邮件/密码,或者使用密码“用户名或电子邮件”。现代的做法是取消“用户名”,因为它是多余的-电子邮件是唯一的,并作为一个用户名的所有意图。
  2. OAuth:如果你要给facebook/google/twitter登录,在你的用户表中做好准备。如何确定用户是普通注册还是社交登录注册?"login_method“之类的字段在这方面很有用。另一个名为"user_type“的字段可能用于识别用户帐户的类型:admin/来宾/employee/等等。
  3. 配置文件字段:由您来确定配置文件变量。在我的上一个项目中,我使用了一些字段,如FirstName、LastName、主题、Timezone等,但是您的里程可能会有所不同。

对于用户in,通常最好有一个自动生成的整数主键,它可以在所有现代数据库中使用。

不用说,不要将实际密码存储在密码字段中。只需有你的密码,并存储哈斯。当用户登录时,您可以散列用户输入并与用户表值进行比较。

最后,不要混淆用户表,包括客户、员工等相关数据。所有客户端都是用户,但所有用户都不是客户端!保持您的设计灵活,以包括各种类型的用户,如管理员,雇员等。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40903224

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档