【发布时间】:2016-06-27 18:37:15
【问题描述】:
我想制作一个任务仪表板,但我有一些问题。
我想要实现的目标:我想在一个页面上显示多个部分,它们相互响应。当您转到仪表板时,您有两列。第一列显示所有任务的列表,第二列显示您在第一列中单击的一个任务的详细信息(或自动在列表中最后创建的任务)
形象化我想要实现的目标: https://gyazo.com/e87acf214e255817cdb03a22e3a35c4d
此时我的文件如下所示:
application.html.erb
<div class="main-content">
<section id="tasks">
<div class="wrapper">
<%= render partial: 'task_lists/index', collection: @task_lists %>
</div>
</section>
<section id="description">
<%= render partial: 'task_lists/show', collection: @task_lists %>
</section>
<%= yield %>
<%= render partial: 'task_lists/index', collection: @task_lists %> 已经有效,因此每项任务都列在一个列中。问题是<%= render partial: 'task_lists/show', collection: @task_lists %>,不起作用。
这是 _show.html.erb,其中“损坏的”部分链接到:
<div class="row">
<div class="task_image">
<img src="../images/phone_img.png"></img>
</div>
<div class="task_heading">
<h1><%= @task_list.title %></h1>
<p class="user_info">For <%= @task_list.client_email %></p>
</div>
<div class="task_content">
<%= render @task_list.task_items %>
</div>
<div class="task_finish">
<div class="row">
<p>Finish task</p>
</div>
</div>
当我运行项目时,Rails 说 ID 在文件 _show.html.erb 中是未定义的。
我的问题: 除非有人单击其他任务,否则如何使 Rails 自动选择第一个任务?因此,当您进入仪表板时,您会在第一列中看到任务列表,Rails 会自动选择第一个任务并在第二列中显示它的详细信息 (_show.html.erb)。当您单击第一列中的其他任务时,您将在第二列中看到该任务的详细信息。这在 Rails 或 JQUERY/javascript 中是否可行?
我希望我的问题很清楚,否则请告诉我。
提前致谢。
【问题讨论】:
标签: javascript jquery ruby-on-rails ajax partials