Сортируемый список без базы данных - PullRequest
1 голос
/ 12 июня 2009

У меня есть виртуальная корзина с использованием сессий (сессий, хранящихся в БД). Я добавляю продукты в корзину, используя вызов AJAX. Этот список также можно сортировать. У меня проблема с обновлением позиции сортировки товаров в корзине, учитывая, что корзина покупок является виртуальной. Может кто-нибудь помочь (в частности, с sortable_element: обновление действия). Вот часть кода:

#cart.rb

class Cart
  attr_reader :items   

  def initialize
    @items = []
  end

  def add_product(product
    @items << CartItem.new(product)
  end
end

#cart_item.rb

class CartItem
  attr_reader :product

  def initialize(product)
    @product = product
  end

  def name
    @product.name
  end
end

#cart/index.html.erb

<div id="items">
  <%= render :partial => 'cart', :object => @cart %>
</div>

#cart/_cart.html.erb

<%= render :partial => 'cart_item', :collection => @cart.items %>
<%= sortable_element "items", :url => {:action => :update} %>

#cart/_cart_item.html.erb

<% content_tag_for :li, cart_item do %>
  <p><%= cart_item.name %></p>
<% end %>

#cart_controller.rb

def index
  find_cart
end

def update
  #???? how does I change the sort of @cart?
  render :nothing => true
end

def find_cart
  session[:cart] ||= @cart
end

1 Ответ

2 голосов
/ 13 июня 2009

посмотрите на это решение, я думаю, оно будет делать то, что вам нужно

Сортировка списка объектов по их атрибутам в Ruby

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...