I have a Deal model that has an attribute called "info" with this structure:
Inside the column "transaction information":
Deal1.info = [{"deal_id":"4","text1":"qqq","text2":"sqsq","image1":"sqqs","video1":"sqsq"},{"deal_id":"5","text1":"sqqs","text2":"qq"}] # no image here inside the json Deal2.info = [{"deal_id":"4","text1":"qqq","video1":"sqsq"},{"deal_id":"5","text1":"sqqs","text2":"qq"}]
The column was defined in mligration as json
add_column :deals, :info, :json, default: '[]'
How can I request this in jsonb with active record?
find all deals in which the information contains at least one deal_id = 4
find the whole deal that contains information that does not contain a json block ({}) with a key called 'image1' (it should only print Deal1, not deal2)
source share