ふわ

2021年04月04日に参加

学習履歴詳細

POSTされた値によって動的にHTMLのクラス名を変更する(3)【一応動いた】

DiariesControllerで以下のようなハッシュを生成し、View側で取り出そうと考えていたが間違った考え方だった。なぜかPostしたparamsをそのままViewで使うみたいなことを考えていた。

ポートフォリオ制作

生成したいHTML(:activity => "0"のとき)

<div class="condition-wrapper">
    <div class="condition-title">活動量</div>
    <ul class="list-group list-group-horizontal">
      <li class="list-group-item">-2</li>
      <li class="list-group-item">-1</li>
      <li class="list-group-item list-group-item-info">0</li>
      <li class="list-group-item">+1</li>
      <li class="list-group-item">+2</li>
    </ul>
  </div>

勘違い

DiariesControllerで以下のようなハッシュを生成し、View側で取り出そうと考えていたが間違った考え方だった。なぜかPostしたparamsをそのままViewで使うみたいなことを考えていた。

@conditions = { :activity => { "-2" => false,
                            "-1" => false,
                            "0"  => true,
                            "+1" => false,
                            "+2" => false },,,,,,}

実際はcreateアクションの後にredirectされるため、indexアクションの結果、Viewで表示される。

一応動くものはできた。

勘違いに気づいた後、DiaryのViewとHelperにメソッドを記述し、上記のHTMLを生成できました。

ただ、DRYではないし、もっと簡潔に書けそうだなーと思っています。

プロを目指す人のためのRuby入門

  • 4.5.2 n以上m未満の判定
  • 4.5.3 range object with case statement
  • 4.5.5 loop with range object
  • 4.5.4 create an array of consecutive values
  • 4.6 RGB変換プログラムの作成
Ruby
HTML

2019年09月12日(木)

5.5時間