选择并订购值

时间:2012-10-08 00:09:51

标签: ajax ruby-on-rails-3

我有一个值表,任务,我需要从数据库中提取,然后按如下顺序排列:

                <section class="entry-content">
                <header>    
                    <h4>Daily</h4>          
                </header>       

                <ul class="task-list" id="daily-tasks">
                    <% @daily.each do |task| %>
                        <% if task.status == "incomplete" %>                    
                            <li><% = task.title %></li>     
                        <% end %>
                    <% end %>

                    <% @daily.each do |task| %>
                        <% if task.status == "complete" %>                  
                            <li><% = task.title %></li>
                        <% end %>
                    <% end %>
                </ul>                           
            </section><!--.entry-content-->

我还有一次,每周,每月和每年可能的任务。

我是Ruby新手,所以我正在寻找最佳方式,因为我目前的代码并不理想

1 个答案:

答案 0 :(得分:2)

我希望这可以帮助你...我建议使用应用程序帮助程序,因为你试图多次执行相同的任务。我没有测试它,但它是完整的想法。

<强>控制器

@daily = Task.where("type = 'daily'")
@weekly =  Task.where("type = 'weekly'") 

查看

<ul>
 <%= print_task (@daily,'completed') %> 
</ul>

<ul>
 <%= print_task (@daily,'incomplete') %> 
</ul>

<ul>
 <%= print_task (@weekly,'completed') %>           
</ul>

<ul>
 <%= print_task (@weekly,'incomplete') %> 
</ul>   
...

<强> application_helper

def print_task(tasks, status)
 html =''
 tasks.each do |task|
   html += '<li>'
     if task.status == status
       html += "#{task.title}"
      end
   html += '</li>'
 end
 html.html_safe
end