首页 > 其他 > 详细

Find Through Association 使用级联查询

时间:2015-10-12 07:01:06      阅读:226      评论: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
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!