我正在尝试使用CanCanCan进行不区分大小写的搜索。 我正在使用一个称为代码的自定义变量,如下所示:
class PromotionsController < ApplicationController
load_and_authorize_resource find_by: :code, id_param: :code
# GET /api/v1/promotions/:code
def show; end
end
在仍然使用CanCanCan的查询的同时,是否可以进行自动填充@promotion的查找不区分大小写?
还是这需要在数据库级别完成?
答案 0 :(得分:1)
我会使用citext
,这是PostgreSQL中不区分大小写的文本类型。
它存在于扩展程序中,因此您将首先创建它:
CREATE EXTENSION citext;
ALTER TABLE promotions ALTER code TYPE citext;