续集选择了太多列

时间:2009-08-03 03:08:49

标签: ruby sequel

似乎Sequel的默认选择是“select *”,这会在您添加一些联接时导致各种问题。至少你最终会在对象中出现错误的ID(因为那时会返回多个“id”列)。做点什么

.select("people.*")

似乎有效,但是将传入的字符串视为列并引用它。到目前为止,我不得不回到裸SQL来解决这个问题,但我知道必须有更好的方法。

1 个答案:

答案 0 :(得分:5)

Sequel的默认行为是选择所有列,但很容易覆盖。如果您只想从一个表中选择所有列:

.select(:people.*)

如果要使用文字SQL字符串:

.select('people.*'.lit)