【问题标题】:two column belong to association with different name rails两列属于具有不同名称的关联
【发布时间】:2016-06-07 12:24:55
【问题描述】:

我有一个带有获胜者和失败者列的结果表,这些与用户表相关:

   #Result controller
   @results = Result.includes(:user).all.paginate(page: params[:page], per_page: 20)

   #result model
   class Result < ActiveRecord::Base
     belongs_to :user
   end

   #user model
   class User < ActiveRecord::Base
     has_many :result
   end

我如何做到这一点?

   <td><%= result.user.winner %></td>
   <td><%= result.user.loser %></td>

【问题讨论】:

  • 条件合适
  • 如果您想以您请求的方式访问他们的记录,您需要在用户模型中为赢家和输家定义关联。但是,我建议您先尝试这样做,然后优化您的关联并编辑您的答案。当一个用户可以有很多结果时,您确定每个用户都应该有一个赢家和输家关联吗?听起来不对。

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


【解决方案1】:

应该类似于...,因为如果您找到 result.user =>,它将为您提供用户详细信息 n 用户没有单个结果,因此您无法与用户检查。

<td><%= result.winner == true ? "User Is Winner" : "User Is Looser " %></td>`

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-01
    • 2018-03-26
    • 1970-01-01
    • 2018-12-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多