代码之家  ›  专栏  ›  技术社区  ›  Jack

创建实例后检查相关关系

  •  1
  • Jack  · 技术社区  · 14 年前

    我有一个模式,其中:

    学生

    • 你和你属于许多课程吗?
    • 有多个:等级,:从属=>:销毁
    • 有许多:作业,:到=>:等级

    课程

    • 有多个:工作分配,:dependent=>:销毁
    • 你和你属于很多学生吗?

    作业

    • 属于:课程
    • 有多个:等级,:从属=>:销毁
    • 有多少学生,:到=>:年级

    分数

    • 属于:学生
    • 属于:分配

    我想添加一些功能,如果添加了一个年级,而学生不属于该年级的作业所属的课程,那么就建立了这种关系。有什么建议来说明最好的方法吗?成绩表没有自己的模式,需要做吗?

    一个朋友建议在创建后使用,但我不知道如何将参数传递给它。

    1 回复  |  直到 14 年前
        1
  •  2
  •   Gordon Isnor    14 年前

    学习成绩如何?像这样的东西

    class GradeObserver < ActiveRecord::Observer
    
      def after_create(grade)
        unless grade.assignment.course.students.include?(grade.student)
          grade.assignment.course.students << grade.student 
        end
      end
    
    end