0
我有這個項目,我正在研究哪裏有清單。這個清單有一個event_id,然後爲每個任務完成2個字段,一個用於完成它的user_id,另一個用於日期。首先,我所做的是抓住所有清單,這給我一個acitverecord ::所有清單的關係。然後我只想得到完整的清單。Rails:在範圍內使用循環
def index
@check_lists = CheckList.joins(:booking).joins(:contract)
@check_lists = @check_lists.complete if params[:status] == "complete"
@check_lists = @check_lists.incomplete if params[:status] == "incomplete"
end
我的問題是我調用@ check_lists.complete,它會自動給我模型中的範圍數組?我需要在方法中傳遞一些東西來獲取數組並通過它來運行嗎?然後,一旦我有了activerecord :: relation,我該如何運行一個循環呢?
scope :complete, { }
好的,我必須交給一個數組,以便在範圍內遍歷它嗎?我不能完成:真,因爲有多個字段可能是真的,我必須檢查,看看這些字段是否是一個有效的任務。所以基本上我需要到具有關係或數組的範圍,然後遍歷每個項目並確定自己是否完整。 – user1977840
如果你不能在查詢內做到這一點,那麼是的。但是你也可以在關係上調用'.each',它會自動將它轉換成一個數組。在很多情況下,Relation會像數組一樣工作。 –
.each也將它變成一個數組。基本上發生了什麼是我有一個有4個任務的清單,那就是video_check,audio_check,operator_check和console_check。所以我需要檢查每一個是否真實,但並非所有清單都需要全部4.我還需要檢查視頻,音頻,操作員和控制檯是否用'event_id'(外鍵)支付我檢查它。我不介意以不同的方式嘗試,但我不能想到一個能夠完成我需要的工作。 – user1977840