3
我不得不通過模型權限模型角色和訪問的的has_many關係。軌道/通過協會活動記錄的has_many - 取創紀錄的
我有沒有兩個角色應該具有相同的訪問情況。所以,我創建了一個自定義的驗證,當電流作用(創建)使用被分配相同的訪問如前現有的角色基本上導致一個錯誤消息,
errors.add(:Role, "already exists with selected permissions") if Role.all.map(&:access_ids).include?(self.access_ids)
這一切工作正常。現在我需要獲取與當前角色具有相同訪問權限的角色。那麼,我該怎麼做?我試圖與
Role.includes(:accesses).where(:accesses => {:id => [1,2]}).count
但這返回其訪問標識具有的所有角色是1或2(說[1,2,3,4],[1],[2])。我需要的是獲得其訪問IDS正是1和2
這將是很好,如果我可以替代的作用「=>」與「==」在上面的查詢:)但是,這顯然是行不通的。
hmm..it作品,但不知何故似乎具有很多查詢語句的循環結果。 Theres錯誤也應該是r.access_ids。我建議在數據庫查詢期間避免這種循環。 無論如何,謝謝 – prasvin
您正在使用上面類似的循環來檢查您上面顯示的驗證,這就是爲什麼我建議使用這種技術。如果您可以爲上述驗證提供更好的解決方案,則可以使用相同的查詢來獲取以下角色。 – Dipil