Rails 3,Cancan,使用accessible_by进行多个模型搜索

问题描述

|| 我使用cancan \'s access_by返回授权的公告,资源等(基于特定公告,资源等的subject_id)时遇到问题。我希望能够在所有这些模型中搜索各种标准,并让结果集仅返回有效和授权的结果,以便进行分页,订购等。 老实说,我对如何最好地解决这个问题有些迷茫。最初,我以为我可以做一个多态表“ Search”来存储每种类型的模型的各种属性(基本上是索引表),但是似乎我当时还不能真正授权基础模型。 任何帮助将不胜感激,或对更好的方法的想法。唯一真正的要求是对应用程序中的内容进行“全局搜索”,其中仅返回当前用户的授权结果。     

解决方法

        在Rails3中,由于关系运算符返回关系,因此可以将它们进一步链接起来。 在控制器动作中:
Model.accessible_by(current_ability).where(\'name LIKE \"%?%\"\',params[:search])