2012-04-05 4 views
0

그래서 나는 게시물로 가득 찬 포럼 스레드를 얻었고 게시물과 사용자 역할에서 사용자를 열렬하게로드하여 전체 데이터베이스 쿼리 수를 줄이고 싶습니다 (어떤 일을하는 가장 좋은 방법 인 것 같습니다)열심히로드가 작동하는지 어떻게 알 수 있습니까?

(가지 여분의 재미, 포럼을하고는 differnece을 만드는 경우 게시물은 중첩 된 자원입니다합니다) 페이지가 렌더링

def show 
    @forum = Forum.find(params[:forum_id]) 
    @posts = @forum.posts.includes(:user => :role).where('id = ? OR parent_post_id =?',params[:id], params[:id]) 
end 

하지만 실제로 있다면 정말 콘솔을보고 말할 수 없다 쿼리의 수를 줄이거 나하지 않습니다. 콘솔은 CACHE에 대한 쿼리 수가 약간 줄어들지 만로드 호출은 안정적으로 유지됩니다. 이 일을 제대로하고 있습니까?

답변

0

그렇습니다. 열망하는로드가 성공하면 쿼리 수가 줄어 듭니다. MYSQL을 사용하는 경우 "query_reviewer"를 사용하는 것이 좋습니다. (https://github.com/dsboulder/query_reviewer) 페이지를 여는 데 얼마나 많은 쿼리가 실행되었는지 보여줍니다.