rails 之 attr_accessible 与 attr_accessor

来源:互联网 发布:删除windows bt 编辑:程序博客网 时间:2024/05/17 06:19
  就在刚刚被这两个东西卡住了一个小时,现在总结这点小知识

  attr_accessible 是一个rails方法,它可以放实例变量进一个mass assignmen
  在attr_accessible之后的属性,进入了白名单,有默认的get,set方法,但是这些属性,必须在schema里面存在它们的名字,就是说要migrate添加到数据库的表里面,可以通过CRUD来操作这些属性在数据库的值
  我犯的错误就是没有migrate进数据库就想在console使用和test,所以就卡住了

  attr_accessor是一个ruby方法
  attr_accessor被修饰的属性,被称为虚拟属性,它跟数据库没有关系,它只存在memory的scope,他也是有get,set方法,但是你要注意一点就是在console里面new出对象时返回的对象数据列表中是看不到这些属性的,因为console只显示的是你schema的字段,虚拟属性没有在其里面,所以看不到,你可以用respon_to?方法去判断属性是否可以new出来

  知识是一点一点积累出来,断断续续也是学。
0 0
原创粉丝点击