D.I.'s Memorandum

日常の切出し、自己投資の感想、Mac等の設定、響いた言葉、リンクなど。
<< Come to good stopping / 一段落 | main | Business trip to Sendai from next week / 次週から仙台出張 >>
スポンサーサイト

一定期間更新がないため広告を表示しています

アプリケーションの作成とトラブル
JUGEMテーマ:コンピュータ

Ruby on Railsを始めてみた。
その備忘録として、カテゴリー「Ruby関連」に残す。

まず、参考にしたのはこちら。
■ 連載:Herokuで作るFacebookアプリ|gihyo.jp … 技術評論社

そのために、環境構築のためのインストールを実行。
■ Installation of "Ruby on Rails" using MacPorts / MacPortsを使った「Ruby on Rails」のインストール | D.I.'s Memorandum

【アプリケーションの作成】
railsコマンドを使って、アプリケーションを作成する。
$ cd ~/
$ mkdir Heroku
$ cd Heroku
$ rails new catalog
$ cd catalog
$ rails s

ブラウザでhttp://localhost:3000/にアクセスすると、
その最初の画面が見れる。

【Gitによるバージョン管理】
次にGitによるバージョン管理をする。
$ git init
$ git add .
$ git commit -m "Init"

【Herokuで動かす】
まずはHerokuにアプリケーションを追加。
$ heroku create

「master」という名称のアプリケーションをHeorkuに登録。
$ git push heroku master

Heroku上での動作確認をする。
$ heroku open


【データベースを利用する】
まずは、railsコマンドのサブコマンドであるgenerateを使い、
ソースコード自動生成コマンドであるscaffoldを呼び出し、
string(文字列)型のname、float(浮動小数点数)型のprice、string型のurlを生成。
$ rails g scaffold Product name:string price:float url:string

そして、rakeタスクを使い、データベースを作成する。
マイグレーション・ファイルの定義に従って、
CREATE TABLEが実行される。
$ rake db:migrate

ここでエラーが発生する。
NOTE: Gem::Specification#default_executable= is deprecated with no replacement. It will be removed on or after 2011-10-01.
Gem::Specification#default_executable= called from /Library/Ruby/Gems/1.8/specifications/rubygems-update-1.8.2.gemspec:11.
NOTE: Gem::Specification#default_executable= is deprecated with no replacement. It will be removed on or after 2011-10-01.
Gem::Specification#default_executable= called from /Users/hoge/.gem/ruby/1.8/specifications/erubis-2.6.6.gemspec:10.
NOTE: Gem::Specification#default_executable= is deprecated with no replacement. It will be removed on or after 2011-10-01.
Gem::Specification#default_executable= called from /Users/hoge/.gem/ruby/1.8/specifications/rack-1.2.2.gemspec:10.
NOTE: Gem::Specification#default_executable= is deprecated with no replacement. It will be removed on or after 2011-10-01.
Gem::Specification#default_executable= called from /Users/hoge/.gem/ruby/1.8/specifications/rake-0.8.7.gemspec:10.
NOTE: Gem::Specification#default_executable= is deprecated with no replacement. It will be removed on or after 2011-10-01.
Gem::Specification#default_executable= called from /Users/hoge/.gem/ruby/1.8/specifications/treetop-1.4.9.gemspec:11.
こちらを参考にした。
■ gem1.8のGem::Specificationワーニングを抑制する - 家畜にっき
$ gem pristine --all --no-extensions

改めてコマンドを叩く。
$ rake db:migrate
(in /Users/hoge/Heroku/catalog)
== CreatePosts: migrating ====================================================
-- create_table(:posts)
-> 0.0021s
== CreatePosts: migrated (0.0024s) ===========================================

【テストの実行】
ユニットテストを実行することも出来る。
$ rake
Loaded suite /opt/local/lib/ruby1.9/gems/1.9.1/gems/rake-0.8.7/lib/rake/rake_test_loader
Started
.
Finished in 0.101452 seconds.

1 tests, 1 assertions, 0 failures, 0 errors, 0 skips

Test run options: --seed 59996
Loaded suite /opt/local/lib/ruby1.9/gems/1.9.1/gems/rake-0.8.7/lib/rake/rake_test_loader
Started
.......
Finished in 0.568167 seconds.

7 tests, 10 assertions, 0 failures, 0 errors, 0 skips
Test run options: --seed 25732

【修正】
先程のトップページとは違うものをが表示されるように、
トップページを変更する。
$ mv public/index.html public/index.html.old

ルーティングも最初の画面にならないように変更するため、
config/routes.rbに以下の行を追加する。
root :to => "products#index"
一度、ローカルで試すべく、コマンドを叩く。
$ rails s
Screenshot of "rails s"
Screenshot of "rails s" posted by (C)dais

【Gitにコミット】
$ git add .
$ git rm public/index.html
$ git commit -m "Scaffold products"

Herokuに送信。
$ git push heroku master

マイグレーションをHerokuに送信。
$ heroku rake db:migrate

Heroku上で動作確認する。
$ heroku open


以上。
スポンサーサイト
comment?









TrackbackURL
トラックバック機能は終了しました。
trackback
Search
SELECTED ENTRIES
TRANSLATION
RECENT COMMENTS
CATEGORIES
CALENDAR
Sun Mon Tue Wed Thu Fri Sat
      1
2345678
9101112131415
16171819202122
23242526272829
3031     
<< August 2020 >>
楽天アフィリエイト
Google Adsense
UK広報ブロガー
RECENT TRACKBACK
ARCHIVES
LINKS
PROFILE
OTHERS
SPONSORED LINKS