2016-01-10 3 views
0

у меня есть:Сумма значений в ассоциативном списке

scaffold product name price:float 
scaffold client name email 
scaffold event title product_id user_id 

событие относится к клиенту и продукту. Как я могу показать sum цен в клиенте/шоу?

Clients_controller:

@events = @client.events 

Client/показать:

- @events.each do |event| 
    = event.product.uprice 
+0

Я не слишком хорошо знакомы с Rails, но попробовать ['.inject'] (http://ruby-doc.org/core-2.2.3/Enumerable.html#method-i-inject)? –

+1

Непонятно, что вы просите. Что такое 'uprice' в вашей HAML? Какая связь между «продуктом», «клиентом» и «событием» - может быть, вам следует передать код объекта Active Record? –

+0

* Mistake. а не 'uprice', а' price'. Событие принадлежит 'client' &' product'. Я вижу все события клиента в клиенте/шоу, но хочу подсчитать общую сумму, которую он должен заплатить за все события:] –

ответ

0

Выполнено! Спасибо, Шин.

Решение:

1) в модели has_many :products, through: :fiscal_periods

2) в контроллере @total_price = @user.products.sum(:uprice)

3) в шоу = @total_price

+0

Ok. PLZ выбрать ответ :) –

Смежные вопросы