两个表具有相同数据的Rails?
我正在尝试在我的视图中创建一个表,并在某些条件下填充它。
我有两个表,两个内部都有两列,一列叫做event_url
,另一列是gmiurl
。 内部带有gmiurl的表称为GMITable
,另一个称为newevent
基本上我想在GMITable
显示所有内容,除非列event_url
内部的url与gmiurls
内的任何url匹配
此刻除此之外我没有任何代码
@GMI = GMITable.all
您可以通过使用表A到表B中的LEFT OUTER JOIN轻松实现结果, 如此可视化说明中所述 。
具体来说,你想要的是:
要仅在表A中生成记录集,而不在表B中生成记录集,我们执行相同的左外连接,然后通过where子句从右侧排除我们不想要的记录。
在你的问题中,不清楚如何调用表,以及它们如何相互关联。 但是,要实现结果,只需使用ActiveRecord join
方法在表之间执行join
TableA.joins('LEFT OUTER JOIN TableB on TableA.field = TableB.field')
并仅选择其中的项目( TableB.id IS NULL
)。
您必须根据自己的需要调整示例。