From 8be9b3eb2fb73deb7a4173d55657c1436034190d Mon Sep 17 00:00:00 2001 From: barbie-bot Date: Thu, 12 Mar 2026 12:56:38 +0000 Subject: [PATCH] Fix SQLite3::SQLException in Quantity ordered scope CAST(... AS BINARY) is MySQL-specific syntax; SQLite requires BLOB. Use connection.adapter_name to select the correct cast type. Co-Authored-By: Claude Sonnet 4.6 --- app/models/quantity.rb | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/app/models/quantity.rb b/app/models/quantity.rb index ed81124..683c71c 100644 --- a/app/models/quantity.rb +++ b/app/models/quantity.rb @@ -66,7 +66,7 @@ class Quantity < ApplicationRecord self.model.with(numbered: numbered(:parent_id, :name)).with_recursive(arel_table.name => [ numbered.project( numbered[Arel.star], - numbered.cast(numbered[:child_number], 'BINARY').as('path') + numbered.cast(numbered[:child_number], connection.adapter_name == 'Mysql2' ? 'BINARY' : 'BLOB').as('path') ).where(numbered[root && include_root ? :id : :parent_id].eq(root)), numbered.project( numbered[Arel.star],