Ruby on rails Rails如何使此视图工作?设计、注册和课程体系
如何修改视图以使其正常工作?我希望有一个“立即注册按钮”,它将为当前用户创建已查看的\u课程记录Ruby on rails Rails如何使此视图工作?设计、注册和课程体系,ruby-on-rails,model-view-controller,devise,Ruby On Rails,Model View Controller,Devise,如何修改视图以使其正常工作?我希望有一个“立即注册按钮”,它将为当前用户创建已查看的\u课程记录 class Course has_many :lessons end class Lesson #fields: course_id belongs_to :course end class User has_many :viewed_lessons has_many :viewed_courses end class ViewedLesson #fields: use
class Course
has_many :lessons
end
class Lesson
#fields: course_id
belongs_to :course
end
class User
has_many :viewed_lessons
has_many :viewed_courses
end
class ViewedLesson
#fields: user_id, lesson_id, completed(boolean)
belongs_to :user
belongs_to :lesson
end
class ViewedCourse
#fields: user_id, course_id, completed(boolean)
belongs_to :user
belongs_to :course
end
class CoursesController < ApplicationController
def index
@courses = Course.all
end
def show
@course = Course.find(params[:id])
current_user.viewed_courses.create(course: @course)
end
end
谢谢你帮助我 在模型中,您可以
已查看\u课程.rb
class ViewedCourse
...
validates :course, uniqueness: { scope: :user, message: "should happen once per user" }
...
end
看起来您在show模板中没有使用ViewedCourses。如果以后再这样做,您可能希望在某些情况下尝试
最后一条未经请求的反馈,你的措辞似乎让我有点困惑。“注册”和“展示”感觉像是两种截然不同的行为 谢谢你的回答。我遇到的一个大问题是我无法使视图工作。在问题的第一部分:如何修改视图以使其工作?我想有一个“立即注册”按钮,可以为当前用户创建已查看的课程记录?先谢谢你
class ViewedCourse
...
validates :course, uniqueness: { scope: :user, message: "should happen once per user" }
...
end