Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/59.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails Heroku上带有'的轨道4;受保护的#u属性';宝石_Ruby On Rails_Heroku_Devise_Omniauth_Mass Assignment - Fatal编程技术网

Ruby on rails Heroku上带有'的轨道4;受保护的#u属性';宝石

Ruby on rails Heroku上带有'的轨道4;受保护的#u属性';宝石,ruby-on-rails,heroku,devise,omniauth,mass-assignment,Ruby On Rails,Heroku,Devise,Omniauth,Mass Assignment,我不知道还能从哪里着手:我花了很多时间在我的项目上,这是一个大学生招聘活动网站,但已经陷入僵局 简而言之,我在localhost中步履蹒跚,添加了Desive等组件;Omniauth认证通过提供商Facebook、LinkedIn和谷歌进行——在这一过程中建立了一个我引以为豪的网站。一切似乎都很顺利,但一旦我被推到“heroku大师”的位置上,事情就开始大打折扣了 我认为这些问题最有可能发生在以下方面:我有一个身份验证模型来跟踪单个用户的身份验证提供者,以及用户模型(保存所有oauth代码) 不

我不知道还能从哪里着手:我花了很多时间在我的项目上,这是一个大学生招聘活动网站,但已经陷入僵局

简而言之,我在localhost中步履蹒跚,添加了Desive等组件;Omniauth认证通过提供商Facebook、LinkedIn和谷歌进行——在这一过程中建立了一个我引以为豪的网站。一切似乎都很顺利,但一旦我被推到“heroku大师”的位置上,事情就开始大打折扣了

我认为这些问题最有可能发生在以下方面:我有一个身份验证模型来跟踪单个用户的身份验证提供者,以及用户模型(保存所有oauth代码)

不用多说,以下是我的应用程序的heroku域和我的代码:


我怀疑与之相关的东西是:

  • 在“pg:reset”和“rake db:migrate”之后加上“heroku run rake db:seed”。。。创建单个空白事件和公司,而不是使用种子文件本身的内容进行种子设定;更多关于这一点,请参见下文
  • 根据heroku日志(如下),与omniauth请求相关的路由和操作似乎工作正常,但实际上没有创建用户或身份验证:

  • 当重置postgres db后,我尝试运行“heroku run rake db:create”或“db:setup”时,我被抱怨如下:

☁ 杜克大学招募[大师]heroku run rake db:设置
正在运行连接到终端的rake db:setup。。。启动,运行。5886
致命:数据库“postgres”的权限被拒绝
详细信息:用户没有连接权限

  • 另外,“heroku run rake db:seed”似乎在做它的事情,但我的db只有一个空事件和一个空公司:
☁ 杜克大学招募[大师]heroku run rake db:seed
正在运行附加到终端的rake db:seed。。。启动,运行。1767

☁ 杜克大学招募[大师]heroku run rails c
正在运行连接到终端的rails c。。。启动,运行。6135
Event.allLoading生产环境(Rails 4.0.0)
irb(主):001:0>Event.all
=>#ActiveRecord::Relation[#事件id:1,标题:无,位置:无,描述:无,日期:无,结束日期:无,公司id:无,创建地点:“2013-08-27 19:30:06”,更新地点:“2013-08-27 19:30:06”]
irb(主):002:0>Company.all
=>#ActiveRecord::Relation[#公司id:1,名称:nil,描述:nil,网站:nil,徽标:nil,创建地点:“2013-08-27 19:30:06”,更新地点:“2013-08-27 19:30:06”]

日志(在heroku上打开应用程序并尝试google身份验证时):

2013-08-27T19:49:18.701285+00:00应用程序[web.1]:在2013-08-27 19:49:18+0000开始获取68.175.76.48的“/”
2013-08-27T19:49:18.701019+00:00应用程序[web.1]:=>Rails 4.0.0应用程序在http://0.0.0.0:49710
2013-08-27T19:49:18.701019+00:00应用程序[web.1]:=>Ctrl-C关闭服务器
2013-08-27T19:49:18.701019+00:00应用程序[web.1]:=>启动WEBrick
2013-08-27T19:49:18.701019+00:00应用程序[web.1]:=>运行“rails服务器-h”以获得更多启动选项
2013-08-27T19:49:18.701019+00:00应用程序[web.1]:在2013-08-27 19:49:18+0000开始获取68.175.76.48的“/”
2013-08-27T19:49:19.131115+00:00 heroku[路由器]:at=info method=GET path=/host=lit-everglades-7633.herokuapp.com fwd=“68.175.76.48”dyno=web.1 connect=2ms服务=442ms状态=304字节=0
2013-08-27T19:49:19.221284+00:00 heroku[路由器]:at=info method=GET path=/assets/application-b44a43097f814ac98347f680223e25f.js host=lit-everglades-7633.herokuapp.com fwd=“68.175.76.48”dyno=web.1 connect=1ms服务=12ms状态=304字节=0
2013-08-27T19:49:49.440894+00:00应用程序[web.1]:在2013-08-27 19:49:49+0000开始获取68.175.76.48的“/”
2013-08-27T19:49:49.440894+00:00应用程序[web.1]:在2013-08-27 19:49:49+0000开始获取68.175.76.48的“/”
2013-08-27T19:49:49.515520+00:00 heroku[router]:at=info method=GET path=/host=lit-everglades-7633.herokuapp.com fwd=“68.175.76.48”dyno=web.1 connect=2ms服务=80ms状态=304字节=0
2013-08-27T19:50:48.534099+00:00应用程序[web.1]:在2013-08-27 19:50:48+0000开始获取68.175.76.48的“/”
2013-08-27T19:50:48.534099+00:00应用程序[web.1]:在2013-08-27 19:50:48+0000开始获取68.175.76.48的“/”
2013-08-27T19:50:48.575279+00:00 heroku[router]:at=info method=GET path=/host=lit-everglades-7633.herokuapp.com fwd=“68.175.76.48”dyno=web.1 connect=1ms服务=51ms状态=304字节=0
2013-08-27T19:50:52.293922+00:00应用程序[web.1]:于2013-08-27 19:50:52+0000开始获取“/用户/注册”68.175.76.48 2013-08-27T19:50:52.293922+00:00应用程序[web.1]:于2013-08-27 19:50:52+0000开始获取“/用户/注册”68.175.76.48 2013-08-27T19:50:52.591752+00:00 heroku[路由器]:at=info方法=GET path=/users/sign_up host=lit-everlades-7633.herokuapp.com fwd=“68.175.76.48”dyno=web.1 connect=1ms服务=307ms状态=304字节=0
2013-08-27T19:51:00.368352+00:00应用程序[web.1]:于2013-08-27 19:51:00+0000开始获取68.175.76.48的“/users/auth/google_oauth2”
2013-08-27T19:51:00.368352+00:00应用程序[web.1]:于2013-08-27 19:51:00+0000开始获取68.175.76.48的“/users/auth/google_oauth2”
2013-08-27T19:51:00.368926+00:00应用程序[web.1]:I[2013-08-27T19:51:00.368823]信息——omniauth:(谷歌oauth2)请求阶段已启动。
2013-08-27T19:51:00.392262+00:00 heroku[路由器]:at=info method=GET path=/users/auth/google_oauth2 host=lit-everlades-7633.herokuapp.com fwd=“68.175.76.48”dyno=web.1 connect=3ms服务=33ms状态=302字节=469
2013-08-27T19:51:00.715597+00:00应用程序[web.1]:于2013-08-27 19:51:00+0000开始获取68.175.76.48的“/users/auth/google_oauth2”
2013-08-27T19:51:00.715597+00:00应用程序[web.1]:于2013-08-27 19:51:00+0000开始获取68.175.76.48的“/users/auth/google_oauth2”
2013-08-27T19:51:00.716822+00:00应用程序[w]
slkdjfs0dslkd already exists
heroku run rake db:migrate
heroku run rake db:seed