応用編 環境構築

2021.4.29

Redisとは

・無料で使用できるDB管理システムの一つ

・高速にデータを処理することができる

参照

初心者による初心者のためのRedis解説 - Qiita

 

Homebrewを使用してRedisをインストールする

Homebrew: OS環境におけるいわゆるパッケージマネージャー

 

Homebrewのバージョン確認

brew -v

Redis インストール

brew install redis

起動

redis-server 

接続

redis-cli

 

参照

Homebrewのインストール - Qiita

MacにRedisをインストールする - Qiita

Redisとは?RailsにRedisを導入 - Qiita

Redisの特徴と活用方法について

Redisサーバー、Redisクライアントの起動と終了 - Qiita

 

 

SQLite

クライアントサーバー型ではないDB = ローカルでしか使用できない

参照

【まだ途中】SQLite, Redis の Insert 比較 (By PHP)【ツッコミ歓迎】 - 自分用備忘録

 

Node.js

Node.js = 12.14.0設定

サーバーサイドで動くJavaScript(クリックすると写真が大きくなったえい、横にスライドしたり...etc)

使用する理由

「クライアントもサーバーサイドも同じ言語で書くことができたら楽じゃない?」

参照

初心者向け!3分で理解するNode.jsとは何か?

 

nodenv

nodeのバージョン管理をする。

参照

nodenv/README.md at master · nodenv/nodenv · GitHub

 

nodeのインストール(12.14.0の場合)

$nodenv install 12.14.0

#nodeのバージョン固定(アプリケーションディレクトリで)

$nodenv local 12.14.0

#nodeのバージョン確認

$node -v

=>12.14.0

 

 

$ bundle exec 

これをつけて実行すると、そのRailsプロジェクトのGemfileで指定した環境で実行することができる。

$ rails db:create

Railsプロジェクトのconfigディレクトリ中にあるdatabase.ymlを読み込み、そのファイルに基づいてDBを作成する。

$rails db:reset

DBの作成、スキーマ(db/schema.rb)の読み込み、シートデータを用いてDBの初期化を実行する。db/migrate/**.rbは使用されない。

参照

bundle execとかdb:createとかが何をしているのか - Qiita

rails db:migrate:resetできなかったのでrails db:resetした - Qiita

 

 

$ bundle exec rails db:seed_fu

db/seed.rbにシートデータを入れておけば、コマンドを叩けば勝手にシートデータを作成してくれる。

1 Gem seed-fuを導入する

2 dbディレクトリ配下にfixtureディレクトリを作成

3 db/fixture配下にシードファイルを作成する。環境によって変更する際は、db/fixture配下にもう一つディレクトリを作成する。

4 $ rails db:seed_fu コマンド実行(特定のディレクトリ配下の内容のみ対象とすることも可能)

5 DBにデータ投入される

seed-fu/README.md at master · mbleigh/seed-fu · GitHub

seed-fuを使って開発・テスト・本番それぞれの環境でのシードデータを作成する | もふもふ技術部

 

Webpacker

Webpackを使用してRuby on Rails上でJavaScript開発をするために必要な一連のまとまりを、標準で実装することができるgemパッケージ のこと。

 

PATHについて

読めばわかるMACでのPATH設定を完全理解 | アールエフェクト

 

springについて

$ spring rspec spec/[対象ファイル]

変更を加えるときにサーバーを再起動する必要がなくなる

参照

Rails/Spring サポート | RubyMine

 

./bin/webpack-dev-server

これを実行しながらターミナルで別タブを開いてbundle exec rails server を実行するとJS側の変更をリロードしてくれるので、いちいちゼロからビルドしなおさないで済むので開発が快適になる。

参照

Railsアプリでwebpackerを使う場合はbin/webpack-dev-serverコマンド実行しておかないと生産性落ちるぞ! - カクカクしかじか

 

これ以外にもコマンド実行しつつ環境構築完了した。