【发布时间】:2011-07-01 11:09:39
【问题描述】:
我目前在我的 Rails 控制器操作之一中有一个 .find 方法 - 相关部分是:
.find(:all, :select => 'last_name as id, last_name as name')
我在尝试将 last_name 列别名为 id 时遇到一些奇怪的行为 - 如果我将其别名为其他任何东西,它工作正常(我可以做 last_name as xyz 并且它在名为 xyz 的列中输出姓氏,但作为我正在使用它来填充一个下拉列表,我需要在 id 列中有名称,我需要将其称为“id”)。
我应该指出它确实输出了一个 id 列,但它始终是"id":0。
谁能阐明我需要做什么才能将此列别名为“id”?
谢谢!
【问题讨论】:
-
如果有帮助,正在创建的 SQL(不会产生任何错误)是:
SELECT last_name as id, last_name as name FROM "customers" INNER JOIN "dealerships" ON "dealerships"."id" = "customers"."dealership_id" WHERE ('t'='t')。
标签: sql ruby-on-rails ruby-on-rails-3