Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/64.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 将“链接帐户”(如Twitter、Facebook)添加到Rails 3网站_Ruby On Rails_Ruby_Database_Devise - Fatal编程技术网

Ruby on rails 将“链接帐户”(如Twitter、Facebook)添加到Rails 3网站

Ruby on rails 将“链接帐户”(如Twitter、Facebook)添加到Rails 3网站,ruby-on-rails,ruby,database,devise,Ruby On Rails,Ruby,Database,Devise,这不是一个关于如何使用Twitter或Facebook API的问题,而是一个关于如何保持数据库同步的简单问题。我想做的是创建一个新的链接帐户,然后将其附加到当前用户。我知道我的代码目前不起作用: 在“编辑配置文件”页面上 <%= f.label :account %> <i>(link another account to this profile)</i><br /> <% form_for @user.linked_accounts

这不是一个关于如何使用Twitter或Facebook API的问题,而是一个关于如何保持数据库同步的简单问题。我想做的是创建一个新的链接帐户,然后将其附加到当前用户。我知道我的代码目前不起作用:

在“编辑配置文件”页面上

<%= f.label :account %> <i>(link another account to this profile)</i><br />

<% form_for @user.linked_accounts do |f| %>
<%= f.text_field :username %>
  <%= f.collection_select :service, User::POSSIBLE_SERVICES, :to_s, :to_s, 
   :include_blank => true
  %>
<%= f.submit %>
<% end %>
如何将其提交到Deave数据库中?这绝对是我需要修复的@user.linked账户的表单。我将其更改为@user,并得到一个无方法错误,因为:服务仅在链接帐户中定义。我认为我需要做的是创建一个新的链接帐户,然后为@user.new\u帐户创建表单

我收到的错误是: SQLite3::SQLException:没有这样的列:linked_accounts.user_id:从linked_accounts中选择linked_accounts.*其中linked_accounts.user_id=1
有一家铁路公司负责处理这一问题。它使用一个属于用户表的授权表,因此您可以添加twitter、facebook等。。。给用户

演员阵容超过2集,使用omniauth,这是一个非常好的解决方案。你可以在这里找到它们
http://railscasts.com/episodes/236-omniauth-part-2

如果我正确理解您的问题,您可以通过以下方式解决:

创建包含社交网络信息的新模型 用于允许通过编辑用户表单添加社交网站
就是这样

您收到的错误表明您的数据库中没有此列,请先尝试修复它我知道-问题是我需要为当前用户创建一个新的链接帐户,我不知道您希望如何将现有用户链接到twitter、facebook等。。。我是对的?为什么不使用omniauth?这与twitter facebook api无关。这是一个更简单的问题,关于如何让用户数据库与帐户数据库连接。啊,对不起,我的英语不太好。。。您只想添加链接到用户的表或列?