很早就听说有Web敏捷开发这回事,最近终于闲了下来,可以利用业余的时间学些新东西,入眼的第一个东东自然是Ruby on Rails。Rails中的核心要素也就是MVC、ORM这些了,因此关于Rails的学习也就自然是这些。
 
今天面对的是这样一个问题ORM问题:客户的公司有多个组,而一个组中自然包含有多个员工。客户的想法是在建立组的时候就直接能够把人员加入到组中,而不是“建组->加人员”这样一个流程。
 
不多说了,还是直接上解决方案吧
1. 新建工程
rails new demo

2.建立Group

rails g scaffold group name:string description:text

3.建立员工employee

rails g model employee name:string birthday:date group:belongs_to

执行完上述命令后

group和employee两个类的代码如下:

/model/group.rb

class Group < ActiveRecord::Base
end

/model/employee

class Employee < ActiveRecord::Base
belongs_to :group
end

4.修改group的代码,如下:

class Group < ActiveRecord::Base
has_many :employees              #复数
end

此外,为了实现一次创建Group和多个Employee,还需要打开Group的嵌套属性,因此

class Group < ActiveRecord::Base
has_many :employees #复数
accepts_nested_attributes_for :employees
end

以上就完成了Model的开发工作,接下来修改Group的控制器

5. 修改Group的控制器

 

最新文章

  1. linux学习日记之鸟哥
  2. 防止sql注入和sqlmap介绍
  3. token详解(转载)
  4. 第21章 java线程(1)-线程初步
  5. 2014年市场需求排名前10的编程语言 - 生命的延续是 BI
  6. 一致性哈希算法——算法解决的核心问题是当slot数发生变化时,能够尽量少的移动数据
  7. 【Unity3D技巧】一个简单的Unity-UI框架的实现
  8. innertext与innerhtml
  9. 交通银行万事达Y-POWER信用卡 普卡
  10. 安装Oracle,新建组、用户的时候的一个错误
  11. 改变nova-compute默认位置的方法
  12. Microsoft Azure Storage Exployer使用指南
  13. Spring之bean一基础
  14. 51nod 1575 Gcd and Lcm
  15. redis —主从&amp;&amp;集群(CLUSTER)
  16. mac下git安装与使用
  17. 移动端调用ArcGIS Server 10.1服务
  18. gitlab 同步小脚本
  19. 阿里云CentOS Linux服务器上搭建邮件服务器遇到的问题
  20. .NetCore 下使用多个DbContext

热门文章

  1. 28. Implement strStr()[E]实现strStr()
  2. 从Android源码分析View绘制
  3. 第7章 性能和可靠性模式 Failover Cluster(故障转移群集)
  4. Codeforces Round #449
  5. C# 学习笔记1 _ 学习要点
  6. (转)Oracle分区表和索引的创建与管理
  7. PCL:全程详解 VS2010+PCL配置
  8. OpenCV、OpenCL、OpenGL、OpenPCL
  9. trigger事件就是继承某一个类的事件.
  10. form表单提交三种方式,demo实例详解