码迷,mamicode.com
首页 > 其他好文 > 详细

Find Through Association 使用级联查询

时间:2015-10-12 07:03:45      阅读:294      评论:0      收藏:0      [点我收藏+]

标签:

class Project < ActiveRecord::Base
    has_many :tasks
end

这段代码的意思是有一个Project类,通过has_many方法定义他有多个tasks


class Task < ActiveRecord::Base
     belongs_to :project
end

这段代码的意思是有一个Task类,通过belongs_to定义它属于一个Project


class ProjectsController < ApplicationController
      def show
             @project = Project.find(params[:id])
             @tasks = Task.find(:all, :conditions => [‘project_id = ? AND complete = ?‘, @project.id, false])
end
end

通过ProjectController中的show方法,返回一个项目或者其包含的未完成的项目。可以将代码进一步优化如下为

@tasks=@project.tasks.find(:all, :conditions=>[complete=?‘,false])

还可以进一步优化成

@tasks=@project.tasks.find_all_by_complete(false)

 

 

Find Through Association 使用级联查询

标签:

原文地址:http://www.cnblogs.com/JackyKun/p/4870581.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!