如何使 activerecord 使用由 find_by_sql 动态生成的字段
我将 find_by_sql 与 Activerecord 一起使用,我在那里生成另一个字段,该字段不在原始表中作为不同字段的组合,例如:
select (field1 + field2) as new_field_name
如果我尝试访问新生成的字段,例如:
@user.new_field_name
我什么也得不到!你建议我如何解决这个问题
I'm using find_by_sql with Activerecord which I generate another field there that doesn't in the original table as a combination of different fields like:
select (field1 + field2) as new_field_name
If I try to access the newly generated field like:
@user.new_field_name
I get nothing! How do you suggest I should approach this problem
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
@user = select (field1 + field2) as new_field_name
这将返回数组,尽管您只得到一条记录。itearte 在 @user 上循环 @user
for user in @user
puts user.new_field_name ###这应该返回 field1 和 field1 的总和字段2 ###
结束
或
如果您想要第一条记录,则
@user[0].new_field_name
@user = select (field1 + field2) as new_field_name
This will return array although you get only one record.itearte a loop over @user
for user in @user
puts user.new_field_name ###this should return a sum of field1 & field2 ###
end
OR
if you want 1st record then
@user[0].new_field_name