只是想知道是否有更好的方法來做到以下幾點:Rails:是否有一種乾淨的方式來定義影響嵌套資源/模型的方法?
用戶的has_many項目
項目的has_many名單
列出的has_many項目
某些用戶只能訪問某些項目。但是,如果用戶有權訪問項目,則用戶可以訪問屬於該項目的所有列表和項目。
下面是我想清理方法:
def check_for_user_access(resource, resource_class, user)
case resource_class
when 'Project'
if resource.user == user
return true
end
when 'List'
if resource.project.user == user
return true
end
when 'Item'
if resource.list.project.user == user
return true
end
else
return false
end
end
我不想因爲在訪問列表和項目爲user_id屬性其實只是依賴於項目。
是否有更好的方法來做到這一點比用switch語句來包裹各地略有不同,比較呢?
在此先感謝!
謝謝......那很完美。 – 2012-04-25 00:08:10
不客氣:) – andrewdotnich 2012-04-26 00:01:29