ruby-on-rails - Rails 2 个表,1 个模型

标签 ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.2

我对 ruby​​/rails 比较陌生,我有以下问题:

我正在开发一个日程安排应用程序,有一个名为 Classes 的模型和另一个名为 ClassEntries 的模型。它们之间的关系是每个用户每个学期可以有多个类(class)条目,每个条目与一个类(class)相关。 Classes 表中的每条记录都属于一所特定的大学。一个用户在 ClassEntries 表中可以有 1 个学期的多个条目(通常为 5 个)。他们的时间表由具有相同学期 ID 的所有 ClassEntries 组成。

我不确定我是否应该使用名为 Schedule 的第三个模型,该模型将手头用户的 ClassEntries 和 Classes 模型中的信息汇集在一起​​。我最初是用 PHP 编写此功能的,我只是使用 MySQL JOIN 来收集必要的信息。在 Rails 中,似乎应该有更好的方法来完成此任务。

在 Rails 中解决这个问题的最佳方法是什么?

非常感谢

最佳答案

因此,您正在寻找的是 Rails 中的大量关联。

您将拥有以下内容:

def User < ActiveRecord::Base
  has_many :course_entries
  has_many :courses, :through => :class_entries
end

def CourseEntry < ActiveRecord::Base
  belongs_to :user
  belongs_to :course
end

def Course < ActiveRecord::Base
  has_many :course_entries
  has_many :users, :through => :class_entries
end

建立这些关联后,Rails 将允许您执行以下操作: some_user.coursessome_course.users 它将通过 CourseEntry 为您加入。

如果这有帮助,请告诉我。如果您需要我更深入地了解,请告诉我。

关于ruby-on-rails - Rails 2 个表,1 个模型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13105841/

相关文章:

ruby - Nokogiri 和按名称查找元素

ruby - 根据矩阵形状进行坐标转换

ruby-on-rails - 如何将图标与记录链接,但将其显示在远离记录部分的位置?

mysql - Rails 3.2,SQL NoMethodError : undefined method `auth_group='

ruby-on-rails - Rails 创建自定义函数/方法以及存储位置

ruby-on-rails - 在 ActionController::Base 中替代 url_for

ruby-on-rails - rails 关系

ruby-on-rails - 是否可以在许多不同的 Controller 中定义 ActionController::Base ?

ruby-on-rails - 用于大型 XML 下载的快速 ruby​​ http 库

ruby-on-rails - 如何构建搜索功能来搜索 GitHub 等多个模型?