У меня очень странная проблема с Рэнсаком, которую мне сложно определить.У меня есть таблица в Solidus , в которой отображается список продуктов, по которым администратор может осуществлять поиск.Этот список продуктов может быть отсортирован по нескольким именам столбцов (а именно, sku
, name
и price
).Однако, когда я пытаюсь выполнить сортировку по столбцу sku
, список выходит из строя в пределах последних ~ 30 элементов списка (всего их около 3000).Похоже, он прекращает сортировку sku
имен после определенного момента, почти в конце.Это происходит только тогда, когда я сортирую по столбцу sku
, а не name
или price
.
. Этот код я использую для этих столбцов:
<thead>
<tr data-hook="admin_products_index_headers">
<th><%= sort_link @search, :sku, Spree::Product.human_attribute_name(:sku), { default_order: "desc" }, {title: 'admin_products_listing_sku_title'} %></th>
<th></th>
<th><%= sort_link @search, :name, Spree::Product.human_attribute_name(:name), { default_order: "desc" }, {title: 'admin_products_listing_name_title'} %></th>
<th class="align-right"><%= sort_link @search,:master_default_price_amount, Spree::Product.human_attribute_name(:price), {}, {title: 'admin_products_listing_price_title'} %></th>
<th data-hook="admin_products_index_header_actions" class="actions"></th>
</tr>
</thead>
Iна самом деле понятия не имею, что в столбце sku
приводит к тому, что сортировка становится некорректной после определенной точки в конце.Строки sku
выглядят так: AB123456
.Все они начинаются с букв AB
, а затем уникального целого числа, которое идентифицирует продукт.Насколько я могу судить, это должно быть то, что Ransack sort_link
может справиться без проблем.Но, увы, я чешу голову ...