Вы можете создать таблицу тележек и таблицу cart_lines.
тележки могут эти атрибуты:
number, user_id
и таблица cart_lines с атрибутами:
cart_id, product_id, quantity....
Затем вы можете установить модель корзины:
has_many :cart_lines
belongs_to :user
Модель CartLines:
belongs_to :cart
belongs_to :product
Модель изделия:
has_many :cart_lines
Если вы хотите заполнить корзину, используя вложенную форму, вы добавляете в корзину модель:
accepts_nested_attributes_for :cart_lines, reject_if: :all_blank, allow_destroy: true