假设我们有 User 模型并且它有名字。我们可以简单地读写它:
user = User.new
user.name = "Peter Griffin"
user.name #=> "Peter Griffin"
我们也可以通过属性哈希(键是字符串)来做到这一点:
user.attributes["name"] = "Peter Griffin"
user.attributes["name"] #=> "Peter Griffin"
还有一些其他奇怪的哈希(这次键是符号):
user[:name] = "Peter Griffin"
user[:name] #=> "Peter Griffin"
这些方法有什么区别?当我们需要使用哈希而不是方法时,是否存在特殊情况?另外我会感谢文档链接,因为我没有找到关于属性的好的文档。