2011-11-16 73 views
1

我正在使用康康,並試圖讓它限制爲特定公司顯示的設備。所有查詢默認爲用戶公司

我有一個很多用戶的公司,只能看到屬於該公司的設備。

我想康康舞能做到這一點在此基礎上:

Rails 3 company account with many users, restrict access to data

所以,我想這個代碼:

can :manage, Equipment do |equipment| 
    user.company == equipment.company 
end 

在設備控制器我有@equipment = Equipment.all我想通只會拉該用戶公司的設備,但當然它把它們全部拉出來。有沒有簡單的方法來做到這一點,或者我需要做什麼@equipment = Equipment.find_by_company_id(current_user.company)隨時我只想拉那公司的設備。更糟糕的是,我想最終按照團體和部門進行細分,但不必強迫自己陷入更大的查詢。我願意接受任何事情,插件,建議,無論是解決這個問題的最快方法。

我可以在這個問題中添加更多的代碼,但我不知道添加這一切真的會幫助這個問題。

非常感謝您

託比

回答

2
+0

這是我所得到的,當我嘗試:'的accessible_by呼叫不能以塊「可以」使用定義。 SQL無法確定:索引 –

+0

也許你可以在沒有塊的情況下重寫你的定義,例如:'can:manage,Equipment,:company => user.company' –

+0

就是這樣,謝謝!!!! –