我在SQLITE表中找到空数组时遇到了问题。
我序列化了product_category
param,它可以很好地将数组保存到我的数据库中,如下所示:
serialize :product_category, Array
以下是查询此param的所有空数组的查询,但它给出了nil
错误:
Product.where(product_category: []).first
如何找到product_category在其数组中没有值的产品?
我尝试使用{}
代替[]
,如同类似的POSTGRESS相关问题所示。
有没有人知道正确的方法?
答案 0 :(得分:1)
我在mysql上尝试了这个,这对我有用,请尝试。
#product.rb
serialize :product_category, Array
#rails console
>> product = Product.new
>> product.product_category = []
>> product.save
>> Product.where("product_categoty = '[]'") #It returns the last record that we have just created.
希望这有帮助!