我有以下模型關聯:如何以這種方式分頁黑子?
class Product < ActiveRecord::Base
has_many :prices
class Price < ActiveRecord::Base
belongs_to :product
這裏是我的控制器
class SearchController < ApplicationController
# Using Sunspot here.
def index
@search = Product.search do
fulltext params[:search]
paginate(:per_page => 5, :page => params[:page])
end
@products = @search.results
end
end
,然後我的觀點:
<%= will_paginate @products %>
<% @products.each do |product| %>
<%= product.name %>
<% prices.each do |price| %>
<%= price.price %>
<% end %>
<% end %>
可以說我有10個產品,每個有20個不同的價格。我的目標是每頁顯示5個產品,但如果頁面上的價格數量一次超過25個,則價格會運行到下一頁。
這裏是什麼,我想要它做的兩個不同的例子:
Product 1, 2, 3, 4 + 5 Prices each = same page
Product 5 + 6 Prices = this Product with Prices on next page
或者
Product 1 + 23 prices = same page
Product 2 + 20 prices = next page with Product and prices
我怎樣才能做到這一點?
我有一個困難時期之後,要誠實。首先,產品一方面如何「有很多價格」,另一方面「屬於很多價格(複數!)」? – polarblau
@polarblau我按問題編輯以便更清晰。 – LearningRoR