Rails 予定管理アプリ 今日の予定だけを表示したい

前提

Railsでシンプルカレンダーを用いた予定管理アプリを作成しています。

実現したいこと

登録した予定の中から、今日の予定だけを表示させたい。

発生している問題

今日の予定だけを表示させたいのですが、ユーザーの予定の全てが表示されてしまいます。
↓問題の画面
https://gyazo.com/f87f91e1ea523e8b2d369a91a637989c
↓ユーザーの予定一覧
https://gyazo.com/eb5f7c25eb9ce09d2557e8653a7c672b
↓データベース
https://gyazo.com/eab1c8a84523e6f6de3bd51051ebc158

該当のソースコード

app/controllers/blogs_controller.rb

class BlogsController < ApplicationController before_action :authenticate_user! def index @blogs = Blog.all @blog = Blog.new end def new @blog = Blog.new end def show @blog = Blog.find(params[:id]) end def create Blog.create(blog_parameter) redirect_to blogs_path end def destroy @blog = Blog.find(params[:id]) @blog.destroy redirect_to blogs_path, notice:"削除しました" end def edit @blog = Blog.find(params[:id]) end def update @blog = Blog.find(params[:id]) if @blog.update(blog_parameter) redirect_to blogs_path, notice: "編集しました" else render 'edit' end end def today @blogs = Blog.all end private def blog_parameter params.require(:blog).permit(:title, :content, :start_time).merge(user_id: current_user.id) end end

app/views/blogs/today.html.erb

<%= render "shared/header" %> <div class="today-task"><%= Date.current.strftime("%m月 %d日") %>の予定</div> <div class="today-blog"> <% @blogs.each do |blog| %> <% if current_user.id == blog.user_id %> <tr class="today-plan"> <td ><%= link_to blog.title , blog %></td> <td><%= blog.start_time.strftime("%H時%M分") %></td> </tr> <% end %> <% end %> </div> <%= link_to '戻る', blogs_path, class: "today-back" %> <%= render "shared/footer" %>

試したこと

if文にDate.today を加えると今日のデータだけを取り出せると思ったのですが、変わらず全ての予定が表示されてしまいました。

<% @blogs.each do |blog| %> <% if current_user.id == blog.user_id && Date.today %> <tr class="today-plan"> <td ><%= link_to blog.title , blog %></td> <td><%= blog.start_time.strftime("%H時%M分") %></td> </tr> <% end %> <% end %>

コメントを投稿

0 コメント