LoginSignup
0
8

More than 3 years have passed since last update.

Rails 新規アプリケーションの作成①

Last updated at Posted at 2019-12-07

書かれていること

  • アプリケーションの作成とRailsの動き
    1.Rails newコマンド
    2.DB作成
    3.ルーティングの設定
    4.コントローラーの作成
    5.ビューの表示

  • 備考

    • Gemとは?
    • バージョン確認
    • リクエストとは?
    • 全体流れ
  • 終わりに

アプリケーションの作成とRailsの動き

1.Rails newコマンド

  • cdでアプリを作成したいディレクトリへ移動し以下を入力
ターミナル
rails new 作りたいディレクトリ名 -d mysql

-d mysqlはデータベースに作成するときの種類をmy sqlにするという指示

エラーが出た時
  • VSCで作成したディレクトリを開く
  • Gemfileの編集(mysql2と書いてある右側のバージョンを変更する)
Gemfile
gem 'mysql2','0.5.3'  #エラー
↓
gem 'mysql2','0.5.2' #バージョンを下げてみる
  • Gemlockファイルを削除し、ターミナルでbundleする
  • Gem再インストール完了(gemlockファイルが新たに作られる)

2.DB作成

ターミナル
rake db:create

3.ルーティングの設定

routes.rb
get 'tweets' => 'tweets#index'
  • リクエストを記述

4.コントローラーの作成

ターミナル
rails g controller コントローラー名
  • 関連ファイルも同時に作られます
コントローラーに記述
コントローラー名_controller.rb
###省略###
def index
end
  • ビューにあるコントローラー名と同名のディレクトリにあるindex.html.erbを呼んでねの意味

5.ビューの表示

index.html.erb
(表示したいものを書く。例えば)
こんにちは!

備考

Gemとは?
  • GemとはRubyで様々なことができるように書かれたプログラムのまとまり
  • GemとはRubyのバージョンごとに管理をされている
バージョン確認
  • 今使っているRubyのバージョン確認($ruby -v)
  • 自分のPCで使えるRubyのバージョン確認($rbenv install --list)
  • mysqlのバージョン確認($mysql --version)
リクエストとは?
  • HTTPメソッドとパス(URL)の組み合わせのこと

GET "tweets"=>"tweets#index"
(HTTPメソッドGETの”tweetsパス”で=>”tweetsコントローラの#indexアクションが動くよ”)という意味。

全体流れ

リクエスト → ルーティング → コントローラー → ビュー

参考ページ

おさえておきたいRubyのバージョンごとの違い・切り替え方法まとめ
MySQLのバージョン確認方法

終わりに

3〜5は流れを見るために書いた記述なので(例)を載せていると思って見てください。
resourcesなどを使っていった方が複雑なルーティングはスッキリまとまるかと思います。

プログラミング始めて2ヶ月半、何も身になっていないような・・・
アウトプットのために(学習記憶を喪失しないため)qiitaへ投稿始めます。
プログラミングはど素人なため、記述内容で誤りなどございましたら、ご指摘いただけると幸いです。
今後、HTML,HAML,CSS,Rails,JS(Jquery)などまとめる予定です。
(こんなにできるかな・・・)
pythonのAI,swiftでiosアプリ制作なんかもできたら。

0
8
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
8