ruby-on-rails – 引用Ruby / Rails中的关联/属性时,*,self *和@
发布时间:2020-12-16 21:31:53 所属栏目:百科 来源:网络整理
导读:假设具有持久性/非持久性属性的Rails模型,有关引用它们的最佳做法是什么?如果您查看公开的代码,则使用不同的模式. 例如,如果您有一个模型到另一个模型的关联.使用self.association_name和@association_name?有什么区别?最好的方法是什么? 与在模型中使用
假设具有持久性/非持久性属性的Rails模型,有关引用它们的最佳做法是什么?如果您查看公开的代码,则使用不同的模式.
例如,如果您有一个模型到另一个模型的关联.使用self.association_name和@association_name?有什么区别?最好的方法是什么? 与在模型中使用attr_accessor:attr定义的非持久属性相同.您可以使用两种方法(self.attr和@attr)来引用它们.最好的方法是什么? 解决方法
self.x / self.x = y总是方法调用.
(self.x只是自己的糖.__发送__(:x)和self.x = y真的只是为了自己的糖.__发送__(:x =,y)) 另一方面,@x只指一个instance variable. 使用@x将不能与AR关联使用,因为AR仅定义x / x =(它们是方法)用于其神奇操作. (AR基本上只是通过这些方法“捕获”意图访问,并通过自己的与任何类似命名的实例变量无关的内部数据结构路由).
def x; @x; end def x= (y); @x = y; end 快乐编码. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
相关内容
- OCP题库变动,052新加的考题及答案分析整理-22
- postgresql – 如何使用pg_dump连接uri/url?
- ios – 通过Application Loader添加新的应用内购买
- Oracle latch: row cache objects系统整体慢
- FlashBuilder中Flex/AIR SDK 更新方法
- LightOJ - 1214-Large Division(c++取模 + java的两种写法)
- ruby-on-rails – 如何使用rspec测试mandrill api
- 解析不了域名
- 18-Oracle入门之视图
- Flex警告:framework.swc”具有默认样式并且在 library-pat