プログラミング

コントローラの責務は「交通整理」

MVCのC(コントローラ)はモデルとビューをコントロール(制御)するのが主な責務である。具体的にコントローラで行うべき処理は以下の通り。 1、リクエストパラメータを適切なモデルクラスに渡し、そのアクションの目的を実現するための処理をモデルクラスに移譲する。(コントローラはどのよう...
0
プログラミング

「eager_loadからのあらかじめHash」で発行クエリ数を最小限に抑えて高速で検索できる

ループ内でアソシエーション以外の方法で参照クエリを実行しなければいけない場合に、クエリ回数を最小限に抑える方法について記す。 状況  以下のような関係性の時、ユーザーが所有する全てのアイテムの名前を取得したい。 # アソシエーション User has_many: user_ite...
0
プログラミング

「Multiple MySQL running but PID file could not be found」を解決できる

エラー  mysqlを起動させようとすると以下のエラーが出る。 $ mysql.server status => ERROR! Multiple MySQL running but PID file could not be found (プロセスid) 解決方法  起動中のmy...
0
プログラミング

コードを読んでクエリ回数をカウントできるようになる

DBを操作するメソッドはクエリを実行する  DBを操作するメソッドを呼び出すとクエリが実行される。  よく使われるのは以下のメソッドだろう。 参照系・find・find_by・where 作成・更新系・create・update・save 削除・destroy  上記のwhere...
0
プログラミング

初めてSSH接続を行うサーバーにて「このサーバーを信頼するか」のメッセージを出さない方法

やり方  ~/.ssh/configに以下を加える。 # ~/.ssh/config Host * StrictHostKeyChecking no  すると以下のようなメッセージは出て来なくなる。 The authenticity of host 'github' can't ...
0
プログラミング

vscodeでインデントガイドの白線を非表示にできる

デフォルトではインデントガイドの白線が表示される  インデントが深い行は白線だらけになるので見づらい。。 インデントガイドを非表示にする  「設定」から「Guides: indentation」のチェックを外す。 インデントガイドの白線が消える  見やすくなった!
0
プログラミング

vscodeでrailsを使う場合に入れたい拡張機能たち

ruby-rubocop  コードを書いた側からrubocopが構文チェックをしてくれる。  コードホスティングサービスにCIがない場合は、こういうチェックは手元でやるしかないので、チェック忘れ防止のために自動でやりたい。  あと、コードを書いたそばから指摘してくれるので、そのう...
0
プログラミング

複数カラムを操作するときのmigrationはbulk: trueオプションをつけてクエリを1つにする

複数カラムを操作するmigrationはbulk: trueオプションをつける  例えばカラム追加をする時は、こんな感じに書く。 class AddFlagColumnToUsers < ActiveRecord::Migration[5.2] def change change...
0
プログラミング

rails consoleやirbで必要のない返り値の出力を避けてコマンドの実行時間を速くする方法

rails consoleやirbは、以下のように入力したコマンドの返り値を出力する。 irb(main):001:0> 1 + 1 => 2 しかし、処理内容によっては返り値の出力が不要な場合がある。 irb(main):001:0> array = [1, 2, 3] irb...
0