0

我在 Ruby On Rails 方面取得了很大进展。我正试图用两个模型/桌子制作一些东西。你知道任何有两个模型的基础教程吗?

例如,我参加了 Rails for Zombies 课程,它略读tweet belongs_to zombiezombie has_many tweets但并没有真正讨论如何设置第二个模型或如何使用它。

在我正在开发的小应用程序中,我现在创建了一个模型公司和模型员工company has_many employees,并添加了employee has_one company但不确定下一步该去哪里,并且可以真正使用涵盖此内容的教程。例如我做了这样的公司:

rails g scaffold company name phone website city state twitter

现在制作我所做的员工模型:rails g scaffold employee name phone email

将它们关联的行为会自动添加所需的附加列,以便employee具有 company_id 还是我应该创建它?我将如何更新员工表格以便我可以选择它所属的公司?

4

1 回答 1

2

快速教程:

让我们创建一个公司

rails g scaffold company name

让我们创建一个员工,并告诉 Rails 该员工将引用公司(将属于它)

rails g scaffold employee company:references name phone email

请注意,在上面的命令中,它是company:references为员工创建列“company_id”的。

更新您的数据库

rake db:migrate

让我们更新员工表单。改变

<%= f.text_field :company %>

到一个从集合中获取选项的选择框,在这种情况下是所有公司

<%= f.collection_select :company_id, Company.all, :id, :name, :prompt => true %>

而且,要查看公司名称,让我们编辑 app/views/employees/show.html.erb

<%= @employee.company.name %>

最后,编辑你的 app/models/company.rb 并添加这一行

has_many :employees, dependent: :destroy
于 2013-05-27T18:51:43.057 回答