好吧,所以在添加一些控制器和重新定位某些代碼之前,我有this working just fine。我覺得我錯過了一些非常簡單的東西,但花了數小時試圖弄清楚發生了什麼。這是情況。從一個單獨的控制器第2部分按總和排序2
class Question < ActiveRecord::Base
has_many :sites
end
和
class Sites < ActiveRecord::Base
belongs_to :questions
end
我想在站點表'like'
列的總和,以顯示我的網站。從我的previous StackOverflow question我已經在/ views/sites/index.html.erb
文件中調用部分時有效。然後,我將部分內容移至/ views/questions/show.html.erb file
中,併成功顯示了這些網站,但未能按照從網站視圖中調用時那樣對它們進行排序。
我打電話的部分從/views/questions/show.html.erb文件,如下所示:
<%= render :partial => @question.sites %>
這裏是SitesController#指數代碼
class SitesController < ApplicationController
def index
@sites = @question.sites.all(:select => "sites.*, SUM(likes.like) as like_total",
:joins => "LEFT JOIN likes AS likes ON likes.site_id = sites.id",
:group => "sites.id",
:order => "like_total DESC")
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @sites }
end
end
當我把在站點控制器index操作它不會做任何東西。它是否需要去問題控制器的某個地方? – bgadoci 2010-05-20 06:01:02