检查孩子是否存在一对多的关系

时间:2010-12-05 18:41:19

标签: ruby-on-rails

用户模型:has_many:courses

课程模型:belongs_to:user

def require_course
      unless #check if current user has course 
        redirect_to root_url
        return false
      end
end 

我需要一种检查当前用户是否有课程的方法。我应该写什么来检查current_user是否有课程。

4 个答案:

答案 0 :(得分:2)

我会去

def require_course
   redirect_to root_path if @user.courses.blank?
end

Documentation about Object#blank?

答案 1 :(得分:0)

current_user.courses.size > 0怎么样?

答案 2 :(得分:0)

即使是较短的一个:

redirect_to(root_url) if @user.courses.size.zero?

答案 3 :(得分:0)

甚至更短:

def require_course
    redirect_to root_url if @user.courses.empty?
end

(请注意root_url而不是root_path,正如所讨论的那样here