我正在尝试更改列名,以便对我们拥有的旧版数据库进行排序。我已经找到了修复here,但我尝试了另一种方法。
我似乎无法使用AS语句。我已经尝试了所有这些:
@radcheck = Radcheck.find(:all, :select => 'attribute AS attr')
和
@radcheck = Radcheck.find_by_sql("select attribute AS attr from radcheck")
当我在控制台中运行后者时,它似乎工作正常,但输出不正确:
irb(main):076:0* @radcheck = Radcheck.find_by_sql("select 'username, attribute AS attr' from radcheck")
Radcheck Load (22.4ms) select 'username, attribute AS attr' from radcheck
=> [#<Radcheck >, #<Radcheck >, #<Radcheck >, #<Radcheck >, #<Radcheck >, #<Radcheck >, #<Radcheck >, #<Radcheck >, #<Radcheck >, #<Radcheck >, #<Radcheck >, #<Radcheck >, #<Radcheck >, #<Radcheck >, #<Radcheck >, #<Radcheck >, #<Radcheck >]
我在这里做点什么蠢事吗?
答案 0 :(得分:1)
您是否尝试过访问@radcheck
元素的属性?这些属性不是由inspect
方法打印的(当对象试图显示它时由irb调用),但这并不意味着它们不在那里。例如,尝试直接打印@radcheck.first.attr
。