ActiveRecord :: Base.connection.exe的受影响的行与Postgres

有没有办法使用ActiveRecord::Base.connection.execute SQL操作产生的受影响行数?

我找到了MySQL适配器的答案 ,但它不适用于Postgres。

或者,如果有办法获得SQL文本响应(例如“UPDATE 126”),那也可以。

您可以使用cmd_tuples方法:

 sql = "UPDATE users SET updated_at = '#{DateTime.now}' WHERE id = 1" ActiveRecord::Base.connection.execute(sql).cmd_tuples # => 1 

文档: http : //www.rubydoc.info/gems/pg/0.17.1/PG%2FResult : cmd_tuples