0

请看下面的例子:

UserAccess.where("action = ? AND resource = ? ", 'index', 'logs')

我们面临的问题是数据库表中的列操作和资源中有空格。为了使这种比较起作用,我们必须首先修剪动作和资源。我们尝试了函数 trim() ,但它似乎不起作用。有没有办法在将它们放在rails SQL中进行比较之前修剪列?理想情况下,解决方案不是特定于数据库引擎的,即使我们使用的是 sqlite3。

感谢帮助。

4

1 回答 1

2

trim()应该可以工作,并且不区分大小写:

UserAccess.where("TRIM(action) = ? AND TRIM(resource) = ? ", 'index', 'logs')

另请注意,如果您在插入 UserAccess 表之前去除空格,事情会更清晰。

于 2013-05-04T22:20:34.543 回答