Sinatraで一般的に使われるgemをまとめてみました。
それぞれの役割を簡単に紹介します!
そもそもSinatraとは
SinatraはRubyの※Gemの1つで、ウェブアプリケーションの開発時に必要な機能を提供してくれます。
※Ruby用のライブラリのことを「Gem」といいます。
Sinatraで利用されるGemについて
個人的メモ。
gem "sinatra"
そのまんま。sinatra使うためのgem。
gem "sinatra-reloader"
コードの変更時にRubyファイルを自動的に再読み込みてくれるgem。
Sinatraアプリ内でrubyファイルを編集した時にこれがあると自動的に読み込んでくれて、変更した時にアプリケーションの再起動が必要なくなります。
詳しくは下記参照
SINATRA::CONTRIB
gem "sinatra-activerecord" / gem 'activerecord', '~> 5.2.0'
sinatraでActiverecordを利用するために必要なgem。
ActiverecordがあればSQLを直接モデルに書かなくてもライブラリが自動的にSQL化してくれる。
アプリケーションを作成するのであれば、上記2つに合わせて**gem "sqlite3"とgem "rake"**も必要!ハッピーセット的な!
gem "sqlite3"
データベースのSQLite3を利用するために必要なgem。組み込みデータベース。
データベースのSQLite3を利用するメリットとしては、
- 動作が軽い
- 著作権がない
- ファイルが1つだけなので、バックアップや復元が簡単
- サーバ側でデータベースを用意する必要がない 等々
SQliteとMySQLの違いは下記参照
OSS×Cloud News/MySQLとSQLiteを比較
gem "rake"
rake db:create_migrationやrake db:migrateのコマンドを使えるようにするために入れる。Activerecordを使ったデータベースのマイグレートに使う。
gem "pry"
binding.pryを利用するために必要。
この機能は、デバッグ、開発者コンソールの実装、ホットパッチの適用などに使用できる。
最後に
補足や修正があれば教えてください!
ちなみにローカルでsinatraアプリを立ち上げる際は、bundle exec ruby pictweet.rbをターミナルに打ち込んだ上でhttp://localhost:4567/ を開く!