Rails TrueFalseの表示の変え方について
解決したいこと
Railsの練習でスケジュール管理アプリを作成しています。
チェックボックスでTrueとFalseを判別して、表示しています。
表示は●と×にしたいです
例)
Ruby on Railsでスケジュール管理アプリを作成しています。
新規作成画面でチェックボックスでチェックを入れるとTrueをDBに送ります。
一覧画面ではTrueとFalseを文字で表示するのではなく、〇と×で表示しようと考えていますが、
なかなかうまくいかなかったので投稿させていただきました。
発生している問題・エラー
一覧画面で表示される●×がチェックボックスのチェック関係なくすべてのスケジュールで〇が表示されてしまう。
該当するソースコード
Controller
def index
@schedules = Schedule.all
if @allday = true
$a = "〇"
else
$a = "×"
end
index.html.erb
<h2>スケジュール一覧</h>
<table>
<thred>
<tr>
<th>ID</th>
<th>タイトル</th>
<th>終日</th>
<th>スケジュール更新日時</th>
</tr>
</thred>
<tbody>
<% @schedules.each do |schedule|%>
<tr>
<th><%= schedule.id %></th>
<th><%= schedule.title %></th>
<th><%= $a %></th>
<th><%= schedule.updated_at.to_s(:datetime_jp1) %></th>
</tr>
<% end %>
</tbody>
</table>
DB
class CreateSchedules < ActiveRecord::Migration[5.0]
def change
create_table :schedules do |t|
t.string :title
t.boolean :allday
t.string :memo
t.timestamps
end
end
end
自分で試したこと
グローバル変数をインスタンス変数にへんこうしたり、
変数名を変更したり、
@schedule = Schedule.find(params[:id])
をいれたり(エラー出ました)
を行いました。
正直、的外れなことをしていると思っていますが、いくら調べても欲しい情報が見つからず、相談させていただきました。
初めての質問なので、至らぬ点数多くあるとは思いますが、よろしくお願いします。
足らない情報があればそのあたりも教えてください
よろしくお願いします。