在rails中向用户添加多个对象

时间:2015-02-17 20:03:58

标签: ruby-on-rails ruby devise migration models

我之前曾问过一个关于向用户表添加多个对象的模糊问题。我从heading_to_tahiti得到了一个非常好的答案,但我在实施它时遇到了麻烦。

我的用户迁移全部都是用设计设置的。我希望能够创建一个允许用户向其帐户添加药物的表单。他建议使用脚手架制作药物模型和其他东西,并在用户模型中制作药物专栏。我试过这个并且它在正确的轨道上,但我对药物模型如何做任何事情以及药物专栏如何储存多种药物感到困惑。

我是rails的新手,特别是做任何与服务器有关的事情,所以任何帮助都会受到赞赏。

我希望最终结果是这个门户网站显示所有用户'药物并允许他们对他们进行CRUD任务。我希望这不是太遥远,并且绝对没有义务回答整个问题,我知道这有很多要求。

以下是上一个问题How can I add additional columns to a Users table with rails and devise gem?

我的应用目前http://imgur.com/ZY456Tj

由于

1 个答案:

答案 0 :(得分:0)

你想要的是一对多的关系。一个用户可以有很多药物。为您的药物创建一个模型,其中包含一个名为user_id的字段。在medications.rb

class Medication < ActiveRecord::Base
  belongs_to :user
end

users.rb

class User < ActiveRecord::Base
  has_many :medications
end

只要您的药物模型有一个名为user_id的字段,Rails就足够聪明,知道当您致电myuser.medications时,您希望所有Medication条记录user_id = myuser.id }。你可以read more here