我使用在开发中运行良好的 find_by_sql 语句。当涉及到使用规范的测试环境时,它会输出错误:
ActiveModel::MissingAttributeError:缺少属性:已注册
我已经运行 db:test:purge 和 db:test:prepare 来清理测试数据库。但错误仍然发生。在开发和测试中,我使用 PostgreSQL。
有问题的陈述如下:
def registered_friends
User.find_by_sql(
["select users.id, users.first_name from users inner join friendships
on users.id=friendships.friend_id
where friendships.user_id = ?
and users.registered = true",self.id])
end