【问题标题】:Rails: Find the ID of a record after using exists?Rails:使用存在后查找记录的ID?
【发布时间】:2015-12-10 01:29:41
【问题描述】:

使用两种不同的模型,RecordLabelArtist,如果使用他们的用户名找到记录,我想链接到他们的页面。查找记录是否存在我没​​有问题,但我不知道如何找到该记录的 ID。我有什么:

<% if RecordLabel.exists?(:username => "#{@artist.artist_profile.record_label_name}") %>
  <%= link_to @artist.artist_profile.record_label_name, record_label_path(RecordLabel.find(### NEED RECORD LABEL ID ###) %>
<% else %>
  <%= @artist.artist_profile.record_label_name %>
<% end %>

【问题讨论】:

  • 请分享您的控制器、模型和架构,以便我们看得更清楚。

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


【解决方案1】:

您可以通过这种方式非常轻松地获取记录(如果存在):

RecordLabel.where(:username => "#{@artist.artist_profile.record_label_name}").first

所以,你的代码变成了:

<% if RecordLabel.exists?(:username => "#{@artist.artist_profile.record_label_name}") %>
<%= link_to @artist.artist_profile.record_label_name,
            record_label_path(RecordLabel.where(:username => "#{@artist.artist_profile.record_label_name}").first) %>
<% else %>
  <%= @artist.artist_profile.record_label_name %>
<% end %>

这应该可以解决您的问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-07-27
    • 2013-09-24
    • 2014-11-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多