Fuwafuwa's memorandum

Fuwafuwa's memorandum

Data analysis, development, reading, daily feeling.
MENU

スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

Ruby on Rails: scaffoldでdbを利用したアプリを作成

scaffoldがすごすぎて一瞬何が起きたのか理解できなかったのですが
データの変数と型を指定すれば、データ作成・更新・表示・削除といった
最低限のデータベースの機能がインターフェース含め自動で作成されるということらしいです。

mkdir BlogApp
cd BlogApp
rails new blog_app —skip-bundle
cd blog_app
bundle install —path vendor/bundle

rails generate scaffold post title:string body:string
bundle exec rake db:migrate

rails s
http://localhost:3000/posts にアクセス。

参考。ありがとうございました。 挫折した人必見!HerokuでRailsアプリを公開する方法

スポンサーサイト

Ruby on Rails: アプリの作成と本番環境へのデプロイ

目次
railsアプリの作成
Gitへcommit
herokuへデプロイ


railsアプリの作成

mkdir SampleApp
cd SampleApp
rails new sample_app --skip-bundle
cd sample_app
bundle install --path vendor/bundle
gemをシステムではなくアプリにインストールするよう、--path vendor/bundleを記載してください。
index画面を編集するためにapp/views/sample/index.html.erbを下記のように編集します。

This is sample.

ターミナルから下記を実行して[ localhost:3000/index ]に飛ぶと、先ほど編集した画面が表示されます。
rails s


Gitへcommit

git init  ## 初期化
git add -A   ##ファイルの追加
git status  ##ステージングの確認
git commit -m "Initialize repository" ## リポジトリに反映
git push
 


herokuへデプロイ

herokuは最大5アカウントまで無料でサーバーを利用できるサービスです。
アカウントがない場合には公式サイトから登録します。

Heroku: Cloud Application Platform

Ruby on Rails ではデフォルトでsqlite3が採用されていますが
herokuはsqlite3に対応していないため、そのままデプロイしようとするとエラーになります

RailsアプリのGemfileを
開発環境ではsqlite3を、本番環境ではPostgreSQLを利用するように書き換えます。

Gemfileの書き換え前
gem 'sqlite3'
 
Gemfileの書き換え後
gem 'sqlite3', group: :development
gem 'pg', group: :production
 
ターミナルで上記の変更を反映させます。
bundle install
 
herokuでPostgreSQLを利用できるようconfig/database.ymlファイルを書き換えます。
書き換え前
production:
  <<: *default
  database: db/production.sqlite3
 

書き換え後
production:
  <<: *default
  adapter: postgresql
  encoding: unicode
  pool: 5
 
herokuにログインしSSHキーを追加。
heroku login
heroku keys:add
 
herokuにアプリを作成。ここで表示されるアドレスがアプリのアドレスとなる。
heroku create 
 
Herokuにデプロイ
git push heroku master
アプリの確認
heroku open


参考。ありがとうございました。
Ruby on Rails チュートリアル
挫折した人必見!HerokuでRailsアプリを公開する方法

Ruby on Rails: herokuデプロイ時のエラー

bundle installした際にpgで異なるバージョンが競合してしまったようです。
下記を参考にしました。ありがとうございます。
【rails】Specified 'postgresql' for database adapter, but the gem is not loaded と怒られた件

ターミナルからpgをアンインストール。

gem uninstall pg 
インストールし直し。
gem install pg 
Gemfileの書き換え。
gem 'pg', '0.21.0'
ターミナルからbundle install
bundle install --path vendor/bundle

Ruby: macでRubyをupdateする

macでrubyのupdateを行おうとしたところ
rbenvのavailable updateに2.2以降のバージョンが出てこなかったため
(command lineのバージョンがやや古いことと関係しているのでしょうか?)
(Seria 10.12.1なのでそこまで古くはないと思うのですが・・・)

例のごとく日本語での情報は見つかりませんでしたが、下記でアップデートできました。
Can I upgrade to the current version of Ruby (2.2.3) on OS X v10.6.8?

curl -sSL https://get.rvm.io | bash -s stable --ruby
rvm install 2.2
rvm use 2.2 --default
簡単ですね。

Ruby on Rails: already runningエラー

IDEとしてAptanaStudio3を使用しはじめましたが
一旦終了し、再度起動した際にalready runningというエラーが発生するようになりました。
サーバーが停止してもpidが保持されたままであるようです。

下記のサイトの通りconfig/boot.rbの先頭にコードを加えると動くようになりました。
http://d.hatena.ne.jp/icalo35/20130625/p1

File.delete(File.expand_path('../../tmp/pids/server.pid',  __FILE__)) rescue
ありがとうございます!

このカテゴリーに該当する記事はありません。
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。