Find_by与SQL表中的特定行

时间:2014-02-04 02:13:27

标签: sql ruby-on-rails ruby-on-rails-4

User + Authentications

用户连接Twitter和Facebook。如果用户连接其帐户,则会将其存储在authorizations table

此表的几行是providerlink(它们各自的个人资料链接)。

我正在尝试从特定提供商处提取链接。

<% @user.authorizations.where(provider: 'Twitter') do |tauth| %>
  <%= link_to tauth.link, :target => '_blank' do %>
    <i class="fa fa-twitter"></i>
  <% end %>
<% end %>

但没有出现,我缺少什么?

提供者表:

provider: Twitter,Facebook

link: http://1.comhttp://2.com

1 个答案:

答案 0 :(得分:1)

你错过了.each。它应该是

@user.authorizations.where(provider: 'Twitter').each do |tauth|

如果您要查找单个记录,可以使用find_by

tauth = @user.authorizations.find_by(provider: 'Twitter')