【问题标题】:is a has_one relationship necessary in this case?在这种情况下是否需要 has_one 关系?
【发布时间】:2011-11-25 18:43:12
【问题描述】:

我有一个用户模型,它有一个工作场所属性。 Workplace 不是强制性的,我将其创建为一个单独的模型,因为它具有多个属性(公司、部门、服务年限等)。

我在 User 和 Workplace 之间建立了 has_one 和 belongs_to 关系,以简化对来自 Workplace 模型的数据的操作和请求。但是,当创建时它们为空时,将数据填充到 Workplace 模型属性中的正确方法是什么?

【问题讨论】:

    标签: ruby-on-rails


    【解决方案1】:

    按照你实现模型的方式,你也可以分开创建两个模型,然后只写 user.workplace=workplace

     user = User.new(...) # or however you create the object
     workplace = Workplace.new(...) # or however you create the object
     user.workplace = workplace
     # or 
     workplace.user = user
    

    【讨论】:

      【解决方案2】:

      你可以的

        user = User.new
        user.workplace.company = "Company"
      

      这必须有效,因为用户有工作场所并且工作场所属于用户。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2017-01-20
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-06-24
        相关资源
        最近更新 更多