[英]has_many through, vs belongs_to
我对在应聘应用中实现以下功能的最佳方法感到有些困惑:
所有用户必须填写1个“ common_application_form”。
在普通申请表中,将提供诸如毕业年份,首选行业的多选选择列表,简历附件等选项。
所有用户都将能够通过他们对问题的答案进行筛选。 即,任何在2005年毕业并且喜欢从事销售工作的人。
我认为可以通过两种方式进行此操作-
选项1:用户has_one common_app
在普通应用中,创建grad_year:integer,pref_industries:string等。
然后通过类似这样的过滤器->
User.includes(:common_app).where('common_app.grad_year = 2005')
不利的一面是,我不确定如何使行业的多选选择列表起作用。 数据类型是否为字符串? 过滤如何工作?
选项2 has_many通过common_app
选项2可以通过common_app模型通过关联来实现某种形式的has_many。 我认为这可能是最好的方法,但是我对has_many关联有点困惑,并且在构造数据库时遇到了麻烦。
在您看来,您是否会选择选项1,如果是,您将如何处理多选选择列表?
如果选择2,您会怎么做?
当然,也许我完全走错了路,在这种情况下,请告诉我:P
选项1对我来说很有意义。
关于首选行业,我将其视为用户和行业列表(UserIndustry模型)之间的结合。
如果要向其应用属性(例如优先级或优先级的强度),则User和Industry都将具有has_many UserIndustry,它们都属于它们,并且Industry和User都通过UserIndustry相互has_many。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.