Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails rails CanCan:获取可访问的记录以及附加的';其中';条款_Ruby On Rails_Authorization_Record_Cancan - Fatal编程技术网

Ruby on rails rails CanCan:获取可访问的记录以及附加的';其中';条款

Ruby on rails rails CanCan:获取可访问的记录以及附加的';其中';条款,ruby-on-rails,authorization,record,cancan,Ruby On Rails,Authorization,Record,Cancan,我目前使用CanCan只获取模型的相关记录,登录用户可以访问这些记录。到目前为止,一切顺利 但是我怎样才能在这样一个Foobar.accessible\u by(current\u ability)中添加一个额外的“where”子句呢 我尝试了Foobar.accessible\u by(当前的能力)。where(…),但这给了我一个异常:SQLite3::SQLException:不明确的列名您包含了一个共享相同属性的模型。如果要使用此属性并保留包含,则需要指定模型,例如: Foo.inclu

我目前使用CanCan只获取模型的相关记录,登录用户可以访问这些记录。到目前为止,一切顺利

但是我怎样才能在这样一个
Foobar.accessible\u by(current\u ability)
中添加一个额外的“where”子句呢


我尝试了
Foobar.accessible\u by(当前的能力)。where(…)
,但这给了我一个异常:
SQLite3::SQLException:不明确的列名

您包含了一个共享相同属性的模型。如果要使用此属性并保留包含,则需要指定模型,例如:

Foo.include(:bar).where(:bar => { :name => 'xyz' })

这应该在你的能力中或在.where(…)中完成,但这取决于该能力的内容和位置。

你可能需要将
包含。。其中
语句转换为一个
范围
,您可以从中进行调整。