- для заказа выбираем товары через select2 multiple
- сохраняем в промежуточной таблице связи
- в этой же таблице в дополнительном поле sort сохраняем порядок выбранных товаров (0,1,2...) для заказа
- при получении запросом $items = $order->items; привязанных товаров к заказу, товары возвращаются отсортированные по id.
Объясните, пожалуйста, как не потерять сохраненный порядок товаров для заказа
Код: Выделить всё
public function getItems() {
return $this->hasMany(Item::className(), ['id' => 'item_id'])->viaTable('order_item', ['order_id' => 'id']);
}