簡體   English   中英

Rails Postgres查詢的結構

[英]Structure for a Rails Postgres Query

因此,我仍在嘗試與Ruby&Rails和Postgres接觸,我需要運行查詢,但無法完全理解如何返回所需的結果

我有以下

命令

訂單中有許多#ITEMS //以及TOTAL_PRICE變量

#ITEMS中的ORDERABLE_ID變量引用了#PRODUCT

我也有

用戶的使用者有很多#ORDERS

我正在嘗試運行將執行以下操作的查詢

檢查當前用戶是否具有包含ORDERABLE_ID == 71,且ORDER TOTAL_PRICE> 40的ITEM的ORDER

OrderItem belongs_to :order 
OrderItem belongs_to :orderable 
Order has many :items, class_name "OrderItem"

假設:

  • 一個id = 71 @product變量
  • 變量@total_price的值為40
  • 名為current_user的變量/函數
  • OrderItem歸屬於:order
  • OrderItem居:可排序,多態:true
  • Order歸屬於:user

然后,我相信它將是這樣的:

Order.
  joins(:items).
  where(items: {id: OrderItem.where(orderable: @product)}).
  where('total_price > ?', @total_price).
  where(user: current_user).
  any?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM