读书人

Ruby on Rails运用new和create创建A

发布时间: 2012-09-23 10:28:11 作者: rapoo

Ruby on Rails,使用new和create创建ActiveRecord对象及他们之间的区别

欢迎来我的博客http://blog.csdn.net/abbuggy/article/details/7944401

在前文《Ruby on Rails,使用Rails Console进行ActiveRecord调试》中,我们能够在rails console中访问模型并进行对象创建和入库操作。

现在我们来看一看创建和入库操作的一些细节。在rails中,new/save操作和create操作都可以创建ActiveRecord对象并持久化到数据库。他们之间的区别还是比较容易猜测出来的。

没错,new操作负责创建对象并返回,在对对象属性赋值之后,调用save方法,对象被保存到数据库中。

irb(main):014:0> subject2=Subject.create(:name=>"terry",:position=>"manager")   (0.0ms)  BEGIN  SQL (19.0ms)  INSERT INTO `subjects` (`created_at`, `name`, `position`, `updated_at`) VALUES ('2012-09-04 17:27:31', 'terry', 'manager', '2012-09-04 17:27:31')   (23.0ms)  COMMIT=> #<Subject id: 3, created_at: "2012-09-04 17:27:31", updated_at: "2012-09-04 17:27:31", name: "terry", position: "manager">

看来一般还是使用new/save的方式多一些吧,不过create方式对于通过命令向数据库中插入若干记录的场景还是比较方便的。

欢迎来我的博客http://blog.csdn.net/abbuggy/article/details/7944401

读书人网 >网络基础

热点推荐