1
0

More than 3 years have passed since last update.

○rudyとrudy on rails(rails)の違いについて○

Posted at

1. rudyとrailsとは

まず、最初にrudyとrailsについて大まかに説明すると

・rudy : proguramming 言語

・rails : フレームワーク 
(4章でお伝えしますが、アクションで変数を定義するのが一般的です)

という違いになります。
*railsはproguramming言語ではないので注意してください。

2. 具体的な違い

1章(1.rudyとrails)だけではあまりピンとこないと
思われる方のほうが多いと思うのでこの章では具体的な説明をしていきたいと思います。

○rudyとは
rudy on railsやwedアプリケーションフレームワークを
使うことができるpuroguramming言語のことを指します。
○railsのフレームワークとは
railsのフレームワークとはrudyで作られたシステムの事です。
rudyで作られてるならrailsの役割必要なの?って思いますよね。
答えから述べるとかなり必要です。
例えば、手で餅をついた後にパッケージしたりするのと機械で餅をついた後にパッケージしたりするのでは効率がかなり違いますよね?
これと同じようにrailsは機械と同じ役割をになっています。
・rails=機械で効率よく行う
と覚えておくといいかもしれません。

3. railsについて

機械で効率よく行うと述べましたが、どういうシステムになっているのか詳しく説明していきます。
: rails figure :
image.png

図のような流れとなっており、順番を追って説明していきます。
(クライアントからリクエストが送られてきた状態からです)
1.HTTPサーバーからリクエストを元に送る
2.リクエストを元にcontroller&actionに誘導します
3.controllerにて要件を伝えて、modelへと伝達します(この場合、許可が降りると考えていただいても構いません)
4.5.modelからdata baseのレコードを引き出します
6.引き出したレコードはcontroller&action内にあるインスタンス変数に渡されます
7.レコードだけではブラウザーに表示できないため、viewを元にHTMLファイルを作成します
8.レコードの情報が埋め込まれたHTMLファイルを渡します
9.HTMLファイルを渡してクライアントにレスポンスします
急に単語が色々と出てきたと思うので、順番に説明していきます

・rouding : urlのどのconttollerのどのactionで処理するか適切に判断する(対応表みたいなもの)
・controller : viewの中のcontrollerとactionと同じフォルダーから
同じフォルダーを探して、ブラウザーに返します

・view : 見た目のHTMLファイルを指します
・data baseとはデータを保存できる場所のことを指します
また、databaseは下の図のような表のようになっており、このようにしてデータを管理しています。このような表のことを「テーブル」といいます。

image.png

カラム:縦の列のこと
レコード:1行ずつのデータのこと(色のついてる部分を指します)
*豆知識として、マイグレーションファイルでテーブルの内容を変えることができるので覚えておいた方がいいです。
:example:
rails generate post column:data と書き込むとpostsテーブルのカラムとdataの変更が可能です。このときpostsを単数形にして記入する必要があります。

4.actionで変数で定義することについて

actionを変数で定義する必要性については、HTMLのままではdata baseに接続できないためです。
○ viewファイル内に変数を定義している場合
<div class="~~">         
  ===         → post1="===" ,post2="==="
<
/div>
のような形となります。
erd(embedded rudy)埋め込みrudyの場合
<% post1="===">
となり、表示の仕方は
<
%=post1%>
という形になります。
○actionに変数を定義する場合
変数名の後に@をつけることでactionで定義したviewを使うことができます。

1
0
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
1
0