我使用Hartl的rails tutorial http://ruby . rails tutorial . org/chapters/modeling-users # sec:user _ model从头开始创建我的身份验证。
我想为我的网站项目实现Facebook和Twitter登录。我在观看Railscasts Simple Omniauth http://railscasts.com/episodes/241-simple-omniauth?view=comments 后使用OmniAuth。
在视频中,我们被要求生成一个用户模型:
rails generate model user provider:string uid:string name:string
Twitter和脸书登录的uid是唯一的吗?或者它和我的用户模型中的id属性是一样的吗?
简单地说,我是否需要在我的用户模型中添加一个uid列来实现OmniAuth?
谢谢
UID是facebook或twitter登录的用户id。它与用户模型中的“id”字段不同。
Omniauth 使用环境变量来设置哈希。此哈希中有一个“uid”键,您将希望使用它在数据库中查找您的用户。它还设置了一个“提供者”键,因此“uid”键和“提供者”键的组合使您能够查找您的用户记录,例如
auth = request.env["omniauth.auth"]
user = User.find_by_provider_and_uid(auth["provider"], auth["uid"])
因此,您的模型(用户)需要同时具有“提供程序”和“uid”列才能正常工作。
准备好了吗? 准备来开始我们的旅程!如果你就是那种从不看说明书的人,我推荐你还是回头看一下简介的最后一节。那里面讲了这个教学中你需要用到的工具及基本用法。我们首先要做的就是进入 ghc 的交互模式,接着就可以写几个函数体验一下 Haskell 了。打开终端机,输入 ghci,你会看到下列欢迎消息: GHCi,version6.8.2:http://www.haskell.org/ghc/ :?fo
从零开始 欢迎您选择ILRuntime , 根据下面教程您可以快速的开始。 起步 在Unity2018以上版本中开始使用ILRuntime ILRuntime1.6版新增了Package Manager发布,使用Unity2018以上版本可以直接通过Package Manager安装,具体方法如下 如果你使用的是中国特别版Unity,那直接打开Package Manager即可找到ILRuntim
我正在开发一款应用程序,它(至少)有两种不同的软件包名称,因此就Android系统而言,实际上有两种不同的应用程序。该应用程序使用Facebook共享,因此我在清单中声明了提供商: 这是根据Facebook的指示完成的:https://developers.facebook.com/docs/sharing/android 这适用于一个应用程序,但尝试在同一设备上安装第二个应用程序失败,错误INS
即便你是一个人在战斗, 你也应该使用 Mercurial 并从版本控制中获益. 下面的指南会告诉你把一个目录提交到 Mercurial 并追根溯源, 是一件多么简单的事情. Mercurial 从零开始 Mercurial 是一个 版本控制系统. 开发者可以用它来管理源代码. 它的主要有两大功能: 它保留每个文件的所有变更/编辑历史 它能够合并源码的改动, 这样你的队友可以各自编码, 然后合并他们
一本给初学者的 React 中文入门教学书,由浅入深学习 ReactJS 生态系 (Flux, Redux, React Router, ImmutableJS, React Native, Relay/GraphQL etc.),打造跨平台应用程式。
问题内容: 我一直在研究使用PostgreSQL数据库的NodeJS项目。我正在尝试实现向数据库的迁移。另外,使用Sequelize。设置迁移文件夹和配置后,运行db:migrate时会引发错误 错误是:“从v4.0.0开始,必须明确提供方言” 问题答案: 对我来说,解决方案基于我为变量设置的内容。 如果没有为该变量设置任何内容,请尝试使用以下命令进行设置: 如果值 是 存在,请确保你在你的con
在十年的互联网运营生涯当中,我遇到过很多年轻人,他们对产品运营岗位趋之若鹜,抱着改变世界的理想,渴望踏入互联网的大门。但其中很多人的起点,却并不是产品助理、产品经理,而是运营、编辑,甚至是设计师或者程序员。