Active Record如何保存初始化模型?

时间:2015-12-16 04:10:56

标签: ruby-on-rails rails-activerecord

保存模型时,有一些模型属性可以从数据库中获取它们的值,如:

  1. 主键
  2. 列默认设置为mysql级别
  3. 当您插入记录(保存)时,它是否实际上在封面下进行2次调用,即插入然后选择?

1 个答案:

答案 0 :(得分:0)

ActiveRecord在保存后不进行查询以获取该信息。我对ActiveRecord的理解是它在内部维护了很多关于数据库结构的信息,例如所有列的名称和类型,以便它可以在模型中生成相应的方法。它也会知道默认值是什么,因此它可以在数据库设置它的同时在模型中设置它。

如果你绕过ActiveRecord来重组数据库,这不是完全干的,会造成很多问题,但是用较少的数据库接触节省的开销是值得的。