2013-05-27 25 views
0

我在Ruby On Rails方面取得了很多进展。我试图抓住我的头,用两个模型/桌子做东西。 你知道有两种模式的基本教程吗?我在哪里可以找到涵盖两种模型的初学者Ruby On Rails教程?

比如我做了Rails的僵尸课程,它撇去了tweet belongs_to zombiezombie has_many tweets,但它并没有真正讨论如何建立该第二模型或利用它。

在我的工作我的小应用程序现在已经有了一个模型公司和模型员工,并添加了company has_many employeesemployee has_one company但不知道下一步去哪里,可能真正使用覆盖此教程。比如我做公司就像这样:

rails g scaffold company name phone website city state twitter

到现在使员工的模式,我做的事:rails g scaffold employee name phone email

将它们关联的动作自动添加所需的额外列,以便employee有COMPANY_ID或我应该创造这个吗?我如何更新员工表格,以便我可以选择它属于哪家公司?

+0

我一直在那里,这是可能的[这篇文章](http://stackoverflow.com/questions/5207038/the-better-way-to-pass-the-foreign-key-value-to-the-rails - 控制器)成为您的指南。 –

+0

http://ruby.railstutorial.org/是26美元,但非常值得的钱,他做了一个伟大的工作。不以任何方式附属,只是一个快乐的客户。 –

+0

我纠正了,他现在免费在线提供本书:http://ruby.railstutorial。org/ruby​​-on-rails-tutorial-book –

回答

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 /视图/员工/节目。 html.erb

<%= @employee.company.name %> 

最后,编辑您的应用程序/模型/ company.rb和加入这一行

has_many :employees, dependent: :destroy 
+0

非常感谢!没想到有人只是写出来,但肯定会感激! – Ryan

相关问题