*

【Ruby on Rails 備忘録】 WEBサービスを作ろうと思った時、最初にすること

公開日: : 最終更新日:2017/01/14 Ruby on Rails , , , ,

 

 

いつも忘れるので、

自分用備忘録として残します。

 

私のやり方なので、あくまでもご参考にしてください。

(scaffoldを使えばもっと簡単でしょうし)

 

 

 

私が使用してるソフト

 

テキストエディタ

Sublime Text

 

データベースの管理

Sequel Pro

 

 

 

 

まず

 

【ターミナル】

 

カレントディレクトリへ移動

$ cd XXX

 

Ruby on railsのプロジェクトを作成

(データベースをmysqlに指定する場合)

$ rails new アプリケーション名 -d mysql

 

※以降、アプリケーション名は pics とします。

 

データベース作成

 

【ターミナル】


$ cd アプリケーション名

$ bundle exec rake db:create

 

データベースができてるか確認

 

 

【Sequel Pro】


ソケット localhost

ユーザ名 root

 

接続

 

1

 

 

データベースを選択

 

アプリケーション名_development

アプリケーション名_test

ができてたらOK

 

 

以降、アプリケーション名は、写真を投稿するアプリと仮定し、pics とします。

 

サーバーの立ち上げ

 

【ターミナル】

 

$ rails s

 

 

【ブラウザ】

 

以下のURLを入力

http://localhost:3000/

 

こんな画面が出たらOK

 

2

 

 

【ターミナル】

 

なお、サーバーが立ち上がってる時は、ターミナルが使えないので、

「コマンド + T」で別のタグを作ること

 

サーバーを終了するには、

「コントロール + C」

 

 

ルーティングの作成

 

【テキストエディタ】

 

Config > route.rb

 

 

2行目で ルートディレクトリを設定。

これで、localhost:3000 だけで、picsにつながる。

 

 

コントローラーの作成

 

【ターミナル】


コントローラーを作成

$ rails g controller pics

 

 

【テキストエディタ】

 

こんなファイルが生成される。

app > controllers > pics_controller.rb

 

 

pics_controller.rbを以下のように編集

 

 

ビューの作成

【テキストエディタ】

 

app > views > pics 

index.html.erb

というファイルを作る

 

すでにHTMLを作ってる場合は、ここにHTMLをコピペする。

 

画像タグは

<% image_tag ‘ファイル名’ %>

に置き換える。

 

CSSファイルは

app > assets > stylesheets

 

画像ファイルは

app > assets > images  

 

に保存する。

 

 

app > views > layouts > application.html.erb

ここに <header>とか、HTMLの共通部分を書く。

 

 

モデルの作成

 

【ターミナル】

 

サーバー起動中は、サーバーを止める。

「コントロール + C」

 

$ bundle exec rails g model pic  

 

※pics ではなく pic (単数)

 

 

【テキストエディタ】

 

モデルファイルが作成される

app > models > pic.rb

 

マイグレーションファイルの編集

db > migrate

 

データベースに、カラム(名前、テキスト、イメージ)を追加

 

 

 

指定できるデータ型は

 

binary

boolean

date

datetime

decimal

float

integer

primary_key

string

text

time

timestamp

 

 

 【ターミナル】

 

マイグレーションファイルの実行

$ bundle exec rake db:migrate

 

 

1つ前の状態に戻したい場合は、

$ rake db:rollback

 

 

 

 

 

【Sequel Pro】

 

データベースに、カラム(名前、テキスト、イメージ)を追加されてることを確認

 

 

 

 

 

以降、

何か機能を実装しようと思うたびに、

ルーティング、コントローラー、ビュー に追加していく。

 

ルーティング

config > routes.rb

 

コントローラー

app > controllers > pics_controller.rb

ここに def で定義する

 

ビュー

app > views > pics

ここに、新しい html.erb を追加していく

 

 

 

 

データベースのカラムを追加、削除したい時

 

カラムを追加したい場合

$ rails g migration Addカラム名(大文字で始める)Toモデル名(1文字開ける) カラム名:型

 

(例)rails g migration AddNameToPics name:string

 

 

カラムを削除したい場合

$ rails g migration Removeカラム名(大文字で始める)Fromモデル名(1文字開ける) カラム名:型

 

(例)rails g migration RemoveNameFromPics name:string

 

 

カラム追加も削除も以下を忘れずに

rake db:migrate

 

 

 

以上、とRuby on Rails でWebサービスを作る時の最初の一歩でした。

 

 

 

ad

    この記事が気に入りましたら、ぜひTwitter、facebookボタンをお願いします。
    ブログを書くモチベーションになります。よろしくお願いします。

  • このエントリーをはてなブックマークに追加
この記事が良かったらビットコインで寄付をお願いします。
ビットコイン投げ銭ウィジェット



関連記事

【Ruby on Rails + LINE Messaging API 備忘録】 LINEボットに送った画像をAmazon S3に保存する

  LINE botに投稿した画像をAmazon S3に保存する方法です。 papercli

記事を読む

【Ruby on Rails 備忘録】Herokuを使ってWEBに公開する

    Ruby on Railsで作ったアプリケーションをHerokuでWEBに公開する際、

記事を読む

【Ruby on Rails 備忘録】bundle install 時のエラー「An error occurred while installing nokogiri (1.6.8)」の解決方法

Ruby on Rails で  bundle install したときに、こんなエラーが出て、ハマ

記事を読む

【Ruby on Rails 備忘録】Herokuを使って公開中のアプリを更新する

        前回のブログ 【Ruby on Rails 備忘録】Herokuを使ってWEBに公開

記事を読む

【Ruby on Rails 備忘録】JSON形式のデータから情報を取得する方法

JSON形式のデータから情報を取得する時、 いつも忘れるので、備忘録 飲食店の検索サービスから

記事を読む

ad

Message

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

ad

「Maker Faire 台北」に出展しました(その1:前日まで)

      11月上旬の週末、Makerfaire台北に出展しました。

レッドハッカソンひろしま2018

      9月29日・30日に広島県・HMCN(Hiroshima

Maker Faire Tokyo に出展したIoTクソゲー「うちわdeファイト」の作り方

       8月4日・5日 Maker Faire Tokyo 20

映画作りのワクワク感に溢れた傑作『カメラを止めるな!』を観て(ネタバレなし)

    僕は、勤務先の送別会や忘年会などの余興で動画を作ることがよくあ

高知をブラタツヤ

    9月1日に「四国クラウドお遍路」というイベントに参加するため、

→もっと見る

    • 335921総閲覧数:
    • 190今日の閲覧数:
    • 288昨日の閲覧数:
    • 1現在オンライン中の人数:
    • 2014年4月29日カウント開始日:
PAGE TOP ↑