Fakerを使ってダミーデータを大量に作ろう

すでにFakerはインストールしてあることを前提。 ユーザーのダミーデータを作成する。 db/seeds.rbにコードを記入 be20.times do |n| User.create!( last_name: Faker::Name.last_name, first_name: Faker::Name.first_name, email: Faker::Internet.unique.…

ダミーデータを作るFakerとは?

Fakerとはランダムでデータをいい感じに作ってくれるgemのこと。 準備 gem 'faker' をgemfileに追加して、terminalでbundleを実行するだけ! コンソールで練習 rails c -s Faker::Name.last_name とすると、名字がランダムで生成される。面白い。 10.times {…

seeds.rbとは?

seeds.rbとは、app/dbディレクトリにあるファイルで、レコードの作成に使うファイル。 レコードの作成を行う際に手作業で行う必要がなく、コマンド一つで大量のレコードを作成できる。 作成方法 seeds.rbにレコード作成処理を記述 rails db:seedをターミナル…

Rails テーブル名 変更

スペルミスによって、テーブル名が意図しないものになっていた。 boradsテーブル => boardsテーブルに変更する。 変更用のマイグレーションを作成。 $ rails g migration change_borads_to_boards マイグレーションの中身を作成 class ChangeBoradsToBoards …

flashメッセージの出し方

controllerのflashメッセージを出したいところでフラッシュの定義をする。 flash[:〇〇] = △△ # 〇〇はキー名,△△は表示させたいメッセージ flashはハッシュのような使い方ができる。 flash: success: login: 'ログインしました' logout: 'ログアウトしました…

日本語表示にしたい!

デフォルト言語を日本語に設定 gem 'rails-i18n'をインストール 複数のロケールファイルが読み込まれるようpathを通す config/locales以下にロケールファイルを配置 ja.ymlに日本語を設定する 設定した日本語を表示させる 様々な記述方法 1.デフォルト言語を…

form_withのlocalについて

form_withはデフォルトでlocalがfalseになっている。これは、非同期通信を行っており、ページをすべて読み込む前に他の動作をすることができるもの。 local: trueとすることで、非同期通信をキャンセルし、処理を終わらせてから、次の処理を行うというように…

decoratorの導入

gem 'draper'を使ってdecoratorを導入する。 decoratorとは 既存の関数やクラスの中身をいじることなく、外側から機能を追加したり、書き換えたりすることのできる。ソフトウェアのデザインパターンの一つ。 draperとは Railsのプレゼンテーション層の役割を…

9/8の学び

部分テンプレートについて 部分テンプレートは、呼び出して使うテンプレート。 名前は、header.html.erbのようにをつける。 呼び出す際は、 <%= render 'shared/header' %> のように、ファイル名を指定する。 image_tagの書き方 image_tag(source, options{}…

%記法について

%記法についてまとめます %記法を使うことで、コードに記述する文字をへらすことができる。 ary1 = %w(banana orange apple) p ary1 # => ["banana", "orange", "apple"]全て文字列の配列になる。 ary2 = %i(banana orange apple) p ary2 # => [:banana, :or…

ぼっち演算子&.

ぼっち演算子とはなにか、「&.」これらしいので調べました。 正式名称は「safe navigation operator」といって、レシーバーがnilの場合でもエラーをはかなくなります。 user = nil puts user&.age # エラーを吐かない puts user.age # エラーを吐く これを使…

nilガードとは

nilガードとはどんなふうに使われるのか分からなかったので調べてみました。 名前から、nilを防ぐということは分かりますが、変数にnilやfalseが入るのを防いでくれます。 例 [1] pry(main)> number = nil => nil [2] pry(main)> number ||= 10 => 10 [3] pr…

ターミナルコマンド(簡易)

ターミナルのコマンド ターミナルコマンド 何ができるか cd ディレクトリを移動する mkdir ディレクトリを作る touch ファイルを作る cat ファイルの中身をみる mv hoge fuga ファイル名変更 rm , rm -R ファイル(ディレクトリ)削除 pwd 現在いる階層の確認…

Railsアプリ全体のジェネレーター変更 環境 M1mac ruby Railsアプリ全体のジェネレーター変更について調べたことをまとめる。 そもそもジェネレータとは ジェネレータは、プログラムにおいて、数列の各要素の値などを次々と生成(ジェネレート)し他の手続き…

Gitの使い方

2日目早朝記録 やったこと Ruby入門(完) git入門(途中) 覚えたこと gitの使い方 $ git init (Gitリポジトリの作成) $ git status (Gitの状態を確認) $ git add ファイル名 (ファイルをGitに加える) $ git commit -m 'メッセージ' (Gitにコミット!) $ gi…

RUNTEQ入学 1日目

RUNTEQに入学しました Ruby超入門のテスト。。。 入学前に着手していたため、テストに取り掛かりました。スラスラと、、、解けない。。間違えた後、自分ではきちんと考えていたので、解説がすんなりと落ちる。これがテキトーにやっていたら、そうはいかなか…

ゼロからわかるRuby超入門2

学んだこと やったこと chapter 7~11 新しく覚えたこと 引数と戻り値の関係 ①メソッドを呼び出す②引数が渡される③戻り値が返ってくる 引数にキーワード引数を用いることができる。 def character(name:, age:) "#{name}は#{age}歳" end puts character(name:…

ゼロからわかるRuby超入門

学んだこと やったこと チャプター1〜6 環境構築(既にしてある) 簡単なプログラム 処理の流れを変える 配列 便利な道具 ハッシュ 新しく覚えたこと VSCodeのショートカットキー(全てではないが便利なことはわかった。) 曖昧だったオブジェクト。オブジェ…

4-3 モデルの「検証」

現場Rails学習中 chapter 4-3 -1 モデルの検証の仕組み モデルオブジェクトの登録・更新を行うのがsaveメソッド(モデルはデータベースとのやりとりが仕事) saveメソッドは検証を自動で行い、エラーがあればfalse、なければtrueを返す 検証を行うだけなら、…

プログラミング学習のアウトプット用に始めました

アウトプットをするぞ プログラミング学習を始めて一ヶ月ほど経ちました。何かアウトプットできるように始めたいな、と考えていたので、はてなブログを使ってアウトプットをしていこうと思います。使い方がまだ全然分かっていないので、少しずつリンクとかを…