Ruby on Rails学習記録⑧

インターネットにWebサービスを公開する。

 

デプロイとは

開発したソフトウェアをサーバに設置してユーザーが利用できる状態にすること。

オンプレミス ・・・ 物理的なコンピュータを設置して運用

→サービスの年商が100億を超えてきた時に話題にあがるかも

クラウドサービス ・・・ 仮想サーバーを使ったぶんだけ手数料を払って使用する。

 

Herokuを使う

 

Herokuについて

 

HerokuはPaas(Plarform as a service)と呼ばれるクラウドサービス。

もとも、Rubyのアプリケーションをホスティングするサービス。

PHPなど、他の言語にも対応

 

Paas

アプリケーション 開発者の担当

ミドルウェア Herokuが担当

OS Herokuが担当 

ハードウェア Herokuが担当

ネットワーク Herokuが担当

gitとは

ソースコードのバージョンを管理するツール  このフォルダでgit使うよという宣言が必要。 git add -A git commit -m "Initial commit"は毎回行う ルート直下のgitignoreに書かれたファイルはgitの管理の対象外

Heroku cliについて

Cloud9などからHerokuを操作するためのツール

cli (Command Line Interface)

devcenter.heroku.com

Ruby on Rails学習記録⑧

Seedsファイルを使った初期データの投入

フォームヘルパー

ストロングパラメーター

バリデート

ルーティングの設定

リファクタリング

 

bootstrapの導入

github.com

 

Installationに導入方法が書いてある。

 

railsのform_withメソッド formに関する記述を簡単にしてくれれる。

local:true h非同期通信を無効にする

 

ストロングパラメーター formから送信されるデータは信用ならないものなので

render

変数paramsにはformから送られてきたデータがはいる。

byebug

バリデートとかバリデーション フォームから送られてきたデータが正当化確かめるためのもの。

 

link_to 、メソッドはviewヘルパーのメソッドの一つ link toはハイパーリンクを<a>を作るテキスト。引数がURL、rails routes のprefixに_pathをつける。

 

通化はアンダースコアをつける

render 'アンダースコアをとったやつ'

Ruby on Rails学習記録⑦

モデルの作成

モデルはDBにまつわる処理

rails g model モデル名 項目名:データ型

DBとモデルができる

マイグレーションとはデータベースの構造に変更を加えること。

rails db:migratie

DBスキーマ : データベースの構造

rails dbconsole

.tables テーブルの確認

ar_internal_metadata schema_migrations ⇦こいつらはrailsが管理のために使用しているtable

.schema テーブル名 : テーブル構造の確認

"created_at" datetime NOT NULL, "updated_at" datetime NOT NULL ⇦ こいつらはtimestampsをマイグレーションしたためにできた。

.q railsコンソールを終了できる。

qiita.com

 

rails console

DB名.new

DB名.all

DB名.find(n)

User.new

ruby-rails.hatenadiary.com

 

8つの基本理念

MVCを採用

ルーティング

View Model Controllerの概念

Ruby on Rails学習記録⑥

ルーティング

amazonaws.com/users/index

usersコントローラークラスのindexアクション

アクションとURLのamazonaws.com〜以降の部分について対応表を確認するコマンドがある

rails routes

URIがURLのこと

config/locals/routes.rbの中にルーティング情報を記述する。

get 'users/index' はusers/indexでアクセスしたらusersコントローラークラスのindexアクションを実行しろとの意味になる。

 

 routes.rbにresources :questionsと記載すると

一般的なWebアプリケーションのルーティングを自動で生成してくれる。

 

Missing :controller key on routes definition, please check your routes.

このエラーはコントローラがおかしいので確認する。

 

Viewについて

rails g controllerをした実行したときにViewのファイルが作成されている

ERBはEnbeddedRuByの略

htmlにrubyを埋め込むことができる

viewはテンプレートということがある。ERBのような技術をテンプレートエンジンという

usersアクションのindexコントローラが呼ばれたらindex.html.erbを呼ぶ記述をしなくても良い

↑これをわかりやすくした文を記録しておきたい

 

app/views/コントローラ名/アクション名.html.erbとするのが大事

 

htmlにrubyを埋め込む

<% %>の内側がrubyの世界

画面に出したいときは<%= %>

 

Viewは描画の処理だけを書く

税金の計算とかはControllerでやる

 

 

 

Ruby on Rails学習記録⑤

 

Railsプロジェクト作成について

Railsプロジェクト作成時は「rails new プロジェクト名」というコマンドを打つ!

備忘として以下記事を記録。

qiita.com

 

思ったより沢山のディレクトリができてびっくりする。

以下の3点が最初のポイントになるので覚えておこう。

 

appMVCcontrollers、models、views)のディレクトリがあること。

config「routes.rb」URLから呼びだすアクション(*1)を紐づけすること。

dbmigrationというDBを変更するためのファイルが追加されること。

www.sejuku.net

(*1)controllerクラスに定義するメソッドをアクションと呼ぶ 

 

"Yay! You’re on Rails!"する方法について

停止含めて3ステップかな。

rails sサーバー起動

・上の方にある"Preview"のボタンを押し、"preview new application"を押す。

 矢印と箱のボタンをクリック。

control + cサーバー停止

techacademy.jp

Ruby on Rails学習記録④

モジュールはインスタンス化できないのでメソッドにはselfをつける 

 

モジュールはインスタンス化できない。newするとNoMethodErrorとなる。 

 

例外処理

 

qiita.com

 

 

github.com

 

qiita.com

 

メソッドの公開範囲について

public 誰からも見える

protected 割愛

private 自分からしか見えない

 

明示しないとpublic

 

railsguides.jp

 

postd.cc

qiita.com

雑記①

元号変わる前にSI業界を旅立つ。

そう決めたらキリが良くていい気分になってきました。

 

アクセス履歴を見たら結構見て頂いているみたいでありがとうございます。

会社にバレないかヒヤヒヤしていますが。

 

ところでこれ読みましたがSmartHRさんってすごく良いですね。

めちゃくちゃ会社としてアピールうまいなって思います。

魅力的な人が働いている魅力的な会社です!っていうところがすぐわかる。

tech.smarthr.jp

そもそも頭いい文章書いてますもんね。僕の自己紹介の5兆倍は良い文だ。 

 

学習記録はほんとに殴り書きみたくなっていますが、

あとでちゃんと(就職できたら)書きなおす予定です。

 

自己紹介読んで登録してくださった方、すみません。

こいつやってんな、ぐらいに思ってください。 

 

あと、予想外にこんなに同じようなこと考えている人多いんだ!と驚きました。

自分も負けてられないですね。頑張ります。