アラフォーからのプログラミングとデザイン

大人から始めたプログラミングとデザインについてのあれこれ

Railsチュートリアル(Toy_app)でできることまとめ

f:id:simpledancer:20171205111557p:plain

ここまで割とサクサク進めました。以前やっていたせいもあるのですが

toy_appはScaffoldというRailsの自動生成してくれる機能を使ったので特にコードを自分で書いたわけではありません。

そういうわけでToy_appでできること・できないこと・理解できたことなどをサクッとまとめたいと思います。

Scaffold機能

  • Scaffold機能でコードを自動生成すると、Webのあらゆる部分からモデルデータにアクセスしてやりとりできるようになる
  • Scaffoldは何よりも手っ取り早いのがとりえだが、これを元にRailsを理解するには向いていない

Railsのscaffoldは、rails generateスクリプトにscaffoldコマンドを渡すことで生成されます。

techacademy.jp

 railsアプリケーションの開発をする際には、モデルやコントローラー、ビューを作っていき、さらに必要なルーティングを作成していく必要があります。 railsにはこれらの作業をまとめて行って、簡単にアプリケーションの雛形を作ってくれる機能があります。 それがscaffoldです。 scaffoldを使うことで素早くrailsアプリケーションを作ることができます。

 簡単に土台を作ってくれる代わりにscaffoldだけではシンプルすぎて実用の開発では使えない。けれど最初にアプリケーショを個人で作るにはとても便利な機能である。

MVC (Model-View-Controller)の概要を理解

 

f:id:simpledancer:20171205113514p:plain

MVCの挙動についてざっくり理解することができます。

www.rubylife.jp

blog.codecamp.jpMVCについてはこの辺の記事がわかりやすいと思います!↑

Model(モデル)

データを扱う部分になります。データベース(後述)に対してデータの登録・取得・更新・削除などを行うことができます。

View(ビュー)

ユーザーの見ることができる部分の作り込みを行います。つまり、ブラウザに描画されているHTMLを作り込む部分になります。

Controller(コントローラー)

ユーザーからの要求に対して、Modelとの連携やどの画面を表示するのかといった処理行う部分になります。

 

 

 

RESTについて

simpledancer.hatenablog.com

バリデーション

データモデルの属性に制限をかけることができる方法

文字数の制限などがあるとエラーを表示するようにできます。

udemy.benesse.co.jp

techacademy.jp

クラスの継承構造

simpledancer.hatenablog.com

Railsコンソールについて

simpledancer.hatenablog.com

まとめ

Toy_appはScaffoldを使っているため、あれよあれよという間にできてしまいます。

ですが細かく見ていくとRailsの基本的な部分が大まかにですが理解できるようになるのかあな?と思いました。

もちろんこんなに簡単に複雑なアプリが作れたらいいのですがそうもいかないのですねー

Railsチュートリアル学習を続けます!