【rails】タイトル、開始時間、終了時間を表示させる
本日はtitle、start_date、end_dateを表示させる処理を実装していこうと思います。
各カラムの追加は前回の記事を参考にして下さい。
それでは本日のお品書きです。
本日やること
- タスク一覧でtitleを表示させる
- タスク個別ページでtitle、content、start_date、end_dateを表示させる
1.タスク一覧でtitleを表示させる
これまでタスク一覧にはcontentが表示されていましたが、今後はtitleが表示されるように変更します。修正するファイルはviews/tasks/index.html.erbです。
views/tasks/index.html.erb
#省略
<tbody> <% @tasks.each do |task| %> <tr> #titleが表示されるように変更 <td><%= task.title %></td> <td><%= task.user.name %></td> <td><%= link_to 'Show', task %></td> <% if user_signed_in? && task.user.id == current_user.id %> <td><%= link_to 'Edit', edit_task_path(task) %></td> <td><%= link_to 'Destroy', task, method: :delete, data: { confirm: 'Are you sure?' } %></td> <% end %> </tr> <% end %> </tbody> </table> #省略
これまで<%= task.content %>となっていた部分を<%= task.title %>に変更します。これでタスク一覧画面にタイトルが表示されるようになりました。
2.タスク個別ページでtitle、content、start_date、end_dateを表示させる
タスク個別ページとはタスク一覧ページにあるshowリンクを押下した先のページです。このページで個々のタスクの詳細な内容を確認することにします。
修正するファイルはviews/tasks/show.html.erbです。
views/tasks/show.html.erb
<p id="notice"><%= notice %></p> <p> <strong>Title:</strong> <%= @task.title %> </p> <p> <strong>Content:</strong> <%= @task.content %> </p> <p> <strong>Start_date:</strong> <%= @task.start_date %> </p> <p> <strong>End_date:</strong> <%= @task.end_date %> </p> <%= link_to 'Edit', edit_task_path(@task) %> | <%= link_to 'Back', tasks_path %>
contentを表示させている記述方法を真似て、title、start_date、end_dateを追加します。
これで個々のタスク個別ページの完成です。おつかれさまでした。
今回の記事はこれまでやってきたことの繰り返しでしたね。
次回は登録したタスクをカレンダーに表示させる機能について解説していきたいと思います。
まとめ
- タスク一覧にtitleを表示
- 個別ページにtitle、content、start_date、end_dateを表示