2012-06-25 51 views
0

我只想要創建對象的人,例如註冊表看到的東西=,而是奮力與設計如果Devise和Rails有問題?

這裏定義的一切是代碼:提前

附註:

<% if user_signed_in? && ***"current_user = registry the user created?"?(struggling with the second part)*** %> 

謝謝我使用的是cancan,但這對我想要顯示頁面的顯示頁面沒有幫助。

回答

1

這不是設計的一部分,而是康康的一部分。

您需要定義您的康康舞能力文件中的能力:

user ||= User.new 
can :read, Registry, :user_id => user.id 

這樣康康舞的授權方法可以讓你做的東西是這樣的:

@registry = Registry.find(params[:id]) 
authorize! :read, @registry 

顯然授權!如果用戶無法訪問此資源,將會引發錯誤。

如果你只是想檢查此視圖中的註冊表使用:

<% if can? :read, @registry %> 
    do your thing here 
<% end %> 

順便說一句,這一切被記錄在康康舞頭版:https://github.com/ryanb/cancan