箱のプログラミング日記。

えんじにあ奮闘記

モデルに書くゲッターの使いどころ

まだRubyとRailsの学習を初めて3週間程度の初学者ですが、 今日「初学者ならではの目線」である疑問が浮かびました。 def review_average reviews.average(:rate).round end 何かの値を返してくれるだけのために定義するメソッドをゲッターと呼びますが、 …

N+1問題とは

N+1問題について、なかなか理解できなかったのですが 今日やっと理解できたので、残しておきたいと思います。 N+1問題はデータベースの話 N+1問題は「includes」によって解消できる 「includes」はモデルに対して使うメソッド コントローラーのアクション内…

form_tagの基本構造と使い方

form_tagの基本構造と記述の仕方について、使い方をよく理解していなかったのでまとめました。 form_tagとは railsでアプリケーションを作成する際のヘルパーメソッドで、 HTMLで投稿フォームを作成するよりも簡単に作ることができ、 セキュリティ面でもform…

よくあるRailsのエラーとその対処法

よくあるエラーとその対処法についてまとめました。 syntax error No Method Error Pending migration error Temolate is missing Routing Error 以下、それぞれのエラーの内容と対処法です。 エラーっぽく赤で表示していきます笑 1.syntax error 意味 Ruby…

devise導入方法

deviseのインストールからモデル生成までの流れをまとめました。 Gemファイルに「gem 'devise'」と追記 $ bundle install $ rails g devise:install $ rails g devise:views $ rails g devise モデル名 $rake db:migrate サーバーの再起動 1.Gemファイルに「…

マイグレーションファイルの作成・実行

新しくテーブルを作りたい railsでのアプリケーション開発に当たって、新しくテーブルを作成したい時は、以下の手順で行う。 ①モデルの作成(≒テーブルの作成) ②生成されたマイグレーションファイルの編集 ③マイグレーションの実行 ①ターミナルから以下のコ…

deviseとかgemって何だろう

deviseとは? deviseとは、railsによるアプリケーション開発を楽にしてくれるGemの一種。 Gemというのはrailsでの開発を楽にしてくれるソフトウェアたちのことを指す。 インストールすると使えて、オープンソース(=誰でも使える)。 railsを使う人たちが作…