Railsで簡単なブログアプリケーションを作成する方法を解説します。
Railsでは、「scaffold」を使うと簡単なブロクアプリが作ることができます。
目次
Railsアプリケーションを作成しよう
Railsアプリケーションは別々のフォルダに作ると管理が面倒になります。
ディレクトリの準備
「mkdir」コマンドで「my_rails_app」ディレクトリを作成します。
mkdir my_rails_apps
作成したディレクトリに「cd」コマンドで移動します。
cd my_rails_apps
アプリ作成
Railsのコマンドで新しいアプリを作成します。
「bundle install」をスキップするオプションをつけます。
rails new heroku-app --skip-bundle
実行結果
rails new heroku-app --skip-bundle
create
create README.md
〜中略〜
remove config/initializers/cors.rb
remove config/initializers/new_framework_defaults_5_1.rb
アプリケーションのディレクトリに「cd」コマンドで移動します。
cd heroku-app
「bundle install」コマンドを実行
「bundle install」コマンドを実行します。
パッケージ管理ツールGemがインストールされるようにオプションをつけます。
アプリ作成時にGemをインストールすると、アプリごとでGemを自動で切り替えてくれます。
インストールには、少し時間がかかるので待ちます。
bundle install --path vendor/bundle
コマンドを実行し、「Bundled gems are installed into ./vendor/bundle.」と表示されればOKです。
bundle install --path vendor/bundle
The dependency tzinfo-data (>= 0) will be unused by any of the platforms Bundler is installing for. Bundler is installing for ruby but the dependency is only for x86-mingw32, x86-mswin32, x64-mingw32, java. To add those platforms to the bundle, run `bundle lock --add-platform x86-mingw32 x86-mswin32 x64-mingw32 java`.
〜中略〜
Bundle complete! 16 Gemfile dependencies, 72 gems now installed.
Bundled gems are installed into ./vendor/bundle.
ブログアプリを作成する
Railsでは、「scaffold」を使うと簡単なブロクアプリが作ることができます。
scaffoldでブログアプリを作成
rails generate scaffold post title:string body:string
コマンド実行し、「create app/assets/stylesheets/scaffolds.scss」を表示されればOKです。
rails generate scaffold post title:string body:string
invoke active_record
create db/migrate/20170927084835_create_posts.rb
〜中略〜
invoke scss
create app/assets/stylesheets/scaffolds.scss
データベースを更新
「migrate」コマンドでデータベースを更新します。
bundle exec rake db:migrate
コマンドを実行結果
bundle exec rake db:migrate
== 20170927084835 CreatePosts: migrating ======================================
-- create_table(:posts)
-> 0.0006s
== 20170927084835 CreatePosts: migrated (0.0006s) =============================
ローカルで動作確認
動作確認してみましょう。
rails s
実行結果
rails s
=> Booting Puma
=> Rails 5.1.4 application starting in development
=> Run `rails server -h` for more startup options
Puma starting in single mode...
* Version 3.10.0 (ruby 2.4.1-p111), codename: Russell's Teapot
* Min threads: 5, max threads: 5
* Environment: development
* Listening on tcp://0.0.0.0:3000
Use Ctrl-C to stop
「アプリケーション”ruby”へのネットワーク受信接続を許可しますか?」と表示されたら、「許可」をクリックします。
ブラウザからアクセス
ブラウザを立ち上げ、「http://localhost:3000/posts」にアクセスします。
下記のように表示されれば成功です。
ブロク投稿テスト
正常に動作するか、投稿テストを行います。
「New Post」をクリックしブログを作成してみます。
投稿するには、「title」「body」を入力して「Create Post」を押します。
以下画面になればアプリケーションは正常に動作しています。
最後に
Railsの「scaffold」を使って、簡単なブロクアプリが作る方法を解説しました。