1

我有一组位于两个不同表中的数据。我想在我的 ruby​​ on rails 应用程序的 /show 页面上加入他们。在控制器中,我将其设置为查找日期,设置一个变量,使用该日期查看其他数据库以获取所需的信息。

我的控制器如下所示:

  def show
    @ticket = Ticket.find(params[:id])
    @hellodate = Ticket.select(:date)
    @winnings = Winnings.find(:all, :conditions => {:date => @hellodate})

  respond_to do |format|
   format.html # show.html.erb
   format.json { render json: @ticket }
   end
 end

为了让我的@winnings 工作,我需要它来拉出日期与@ticket 日期匹配的行。我是这个世界的新手,并且会喜欢任何输入/解决方案,因为这不起作用。它应该只显示一个@winnings,但它会显示多个,尽管只有一个日期会匹配。谢谢!

4

1 回答 1

1

@hellodate的不是你想的那样。这个:

@hellodate = Ticket.select(:date)

或多或少会给你以下结果:

select "date" from "tickets"

所以你会得到所有Ticket的 s 但只有date列会被拉出数据库。大概你只想要datefrom @ticket

@ticket   = Ticket.find(params[:id])
@winnings = Winnings.where(:date => @ticket.date)
于 2013-10-01T04:38:15.733 回答