class BaseForm include ActiveModel::Model def check_project_category(project_category_id) unless project_category_id == '' raise "project_category_id参数值无效." if project_category_id && !ProjectCategory.exists?(project_category_id) end end def check_project_language(project_language_id) unless project_language_id == '' raise "project_language_id参数值无效." if project_language_id && !ProjectLanguage.exists?(project_language_id) end end def check_repository_name(user_id, repository_name) check_reversed_keyword(repository_name) raise "项目标识已被使用." if Repository.where(user_id: user_id, identifier: repository_name.strip).exists? end def check_project_name(user_id, project_name) raise "项目名称已被使用." if Project.where(user_id: user_id, name: project_name.strip).exists? end def check_reversed_keyword(repository_name) raise "项目标识已被占用." if ReversedKeyword.is_reversed(repository_name).exists? end end