首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >招聘系统的数据库结构

招聘系统的数据库结构
EN

Stack Overflow用户
提问于 2013-12-09 04:48:48
回答 4查看 386关注 0票数 0

我是个菜鸟,我想和你们确认一下,如果我在正确的轨道上,在建立招聘申请的模型方面。

有用户

每个用户填写详细信息,并记录1段视频。

,有工作,

每个工作都有一个或两个关于该工作的特定问题。用户通过填写1或2个特定问题来申请职务。

基于此,

我们将有用户模型.

用户模型将具有属性名称、电子邮件、程度、pref_city等、video_id。

用户has_many作业

然后,--有作业模型。作业belong_to用户

我对这个模型的效果很困惑

每个工作将有job_title,job_desc,工资等,以及custom_question1,custom_question2。

当管理员创建作业时,他们将为1和2编写自定义问题。

然后,当用户申请工作时,他们会回答这些问题。然而,,我将在哪里记录自定义问题的答案?

我在正确的轨道上吗?

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2013-12-09 06:14:31

这是作业和用户之间的一对一的关系。用户可以申请许多作业,作业可以有许多应用程序,对吗?您可以使用以下结构来建立更健壮的模型:

代码语言:javascript
复制
User
  has_many :jobs, through: :applications

Job
  has_many :users, through :applications
  has_many :questions

Application
  belongs_to :user
  belongs_to :job
  has_many :answers

Question
  belongs_to :job
  has_one :answer

Answer
  belongs_to :application
  belongs_to :question

我真的认为不应该将答案链接到用户,而是应该将它们链接到应用程序。

票数 1
EN

Stack Overflow用户

发布于 2013-12-09 05:12:32

就我个人而言,为了拥有更多的rails魔力,我会将问题和答案从job本身中分离出来,因为我们确实热爱我们的元。

所以看起来更像这样:

代码语言:javascript
复制
User
  has_many :jobs
Job
  belongs_to :user
  has_many :questions
  has_many :applications
Application
  belongs_to :user
  belongs_to :job
Question
  has_many :answers
  belongs_to :job
Answer
  belongs_to :question
  belongs_to :user

这样,您就可以通过以下方式获得给定职务当前答案的列表:

代码语言:javascript
复制
@job.questions.first.answers
票数 2
EN

Stack Overflow用户

发布于 2013-12-09 05:09:51

我认为你走在正确的轨道上。下面的代码集应该会给你一些想法。听起来是个很棒的项目。玩得开心!

代码语言:javascript
复制
# user.rb
class User < ActiveRecord::Base
  has_many :jobs # jobs this user posted
  has_many :job_applications
  has_many :user_answers

# job.rb
class Job < ActiveRecord::Base
  has_many :questions
  has_many :job_applications

# question.rb
class Question < ActiveRecord::Base
  has_many user_answers
  belongs_to :job  

# job_application.rb
class JobApplication < ActiveRecord::Base
  belongs_to :user
  belongs_to :job

# user_answer.rb
class UserAnswer < ActiveRecord::Base
  belongs_to :user
  belongs_to :question
  # has a column "answer text..."
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20463367

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档