2

У меня есть две модели: самооценка и оценка, где самооценка has_many :scores и accepts_nested_attributes_for :scores. В новой форме самооценки может быть до 60 вложенных баллов. То, что я хотел бы сделать, это реализовать разбиение на страницы на те вложенные поля атрибутов внутри формы.Will_paginate внутри формы POST с вложенными атрибутами

Я попытался реализовать его без везения.

контроллер

def new 
    @self_assessment = SelfAssessment.new 
    @scores = @self_assessment.scores.paginate(:page => params[:page], :per_page => 10, :total_entries=> @self_assessment.scores.size) 
end 

вид

<%= form_for @self_assessment do |f| %> 
    <h2>At home...</h2> 
    <% Category.where(at_home: true).each do |category| %> 
     <h3><%= category.title %></h3> 
     <% Act.where(category_id: category.id).each do |act| %> 
      <%= f.fields_for :scores, Score.new do |builder| %> 
       <%= builder.hidden_field :self_assessment_id, value: @self_assessment.id %> 
       <%= builder.select(:rank, scales_for_select(act), prompt: "-Select-") %> 
       <%= act.name %><br> 
      <% end %> 
     <% end %> 
    <% end %> 

    <h2>At work...</h2> 
    <% Category.where(at_work: true).each do |category| %> 
     <h3><%= category.title %></h3> 
     <% Act.where(category_id: category.id).each do |act| %> 
      <%= f.fields_for :scores, Score.new do |builder| %> 
       <%= builder.hidden_field :self_assessment_id, value: @self_assessment.id %> 
       <%= builder.select(:rank, scales_for_select(act), prompt: "-Select-") %> 
       <%= act.name %><br> 
      <% end %> 
     <% end %> 
    <% end %> 
    <%= will_paginate @scores, :params => { :method => :post } %> 
    <%= f.submit "Submit" %> 
+0

привет, как вы достигли этого, пожалуйста, напишите свой код – santosh

ответ

1

Я хотел бы предложить, чтобы попробовать некоторые JavaScript решения для вёрстка. Попробуйте использовать данные.

Проверить эту ссылку: http://datatables.net/examples/api/form.html

Надеется, что это помогает.

+0

Спасибо, Хорхе, я рассматривал javascript, но все же надеюсь, что кто-то может предложить решение для разбивки на страницы (или я сам это выясню) –

+0

Привет, вам удалось это сделать один из? Я пытаюсь сделать то же самое. ура! – undefined

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