Just a bit of the background of the issue.
When there are multiple rules, CanCan does the sensible thing by merging them together. However, if one of the conditions is of type MetaWhere::Column, it fails. MetaWhere is intelligent enough to work with multiple conditions defined in any format whatsoever. So, this fix simply ensures that with multiple rules, where one of them is of type MetaWhere, CanCan doesn't merge them and just pass it on to MetaWhere.
Add code to ensure the meta-where and non-metawhere conditions are ha…