课堂在线学习

dev_cs
cxt 5 years ago
parent 3b4f6c1a27
commit baba6aa9e9

@ -0,0 +1,9 @@
class CourseStage < ApplicationRecord
belongs_to :course, counter_cache: true
has_many :course_stage_shixuns, -> { order("course_stage_shixuns.position ASC") }, dependent: :destroy
has_many :shixuns, :through => :course_stage_shixuns
validates :name, length: { maximum: 60 }
validates :description, length: { maximum: 300 }
end

@ -0,0 +1,5 @@
class CourseStageShixun < ApplicationRecord
belongs_to :course, counter_cache: :stages_count, counter_cache: :shixuns_count
belongs_to :course_stage
belongs_to :shixun, counter_cache: :shixuns_count
end

@ -0,0 +1,13 @@
class CreateCourseStages < ActiveRecord::Migration[5.2]
def change
create_table :course_stages do |t|
t.references :course, index: true
t.string :name
t.text :description
t.integer :position
t.integer :shixuns_count
t.timestamps
end
end
end

@ -0,0 +1,12 @@
class CreateCourseStageShixuns < ActiveRecord::Migration[5.2]
def change
create_table :course_stage_shixuns do |t|
t.references :course, index: true
t.references :course_stage, index: true
t.references :shixun, index: true
t.integer :position
t.timestamps
end
end
end

@ -0,0 +1,5 @@
require 'rails_helper'
RSpec.describe CourseStageShixun, type: :model do
pending "add some examples to (or delete) #{__FILE__}"
end

@ -0,0 +1,5 @@
require 'rails_helper'
RSpec.describe CourseStage, type: :model do
pending "add some examples to (or delete) #{__FILE__}"
end
Loading…
Cancel
Save