在 Rails 3 中动态获取模型属性


如何

动态地从模型对象获取属性?我将用户对象的属性作为字符串:

u = User.find(1)

我可以做类似u.get("user_id")

您可以尝试像哈希一样使用 ActiveRecord 模型实例。

u = User.find(1)
name = u[:name]
field = "first_name"
first_name = u[field]

另一种方法:

attr = :first_name
@user.read_attribute attr  

试试这个

user = User.find(1)

那么这样的事情应该做你需要的

user.send('field_name')

试试这个

u = User.find(1)
attr = "first_name"
u.send(attr)

不确定我是否完全理解你的问题。尝试类似操作:

User.find(1).name

如果您的意思是只想从数据库特定属性中获取,您可以执行以下操作:

User.find(1,:select => :name)

相关内容

  • 没有找到相关文章

最新更新