学んだことを随時まとめてく
間違っている点があれば是非教えていただきたいです
対象者
- Rails学習者(私)
- PHPもLaravelも初学者(私)
ざっくり似てるところ
-
MVCアーキテクチャ採用/ルーティング
- Rails
-
models/Xxx.rb
-
app/views/xxx.html.erb
-
app/controllers/xxx_controller.rb
- Laravel
-
models/Xxx.php
-
resources/views/xxx.blade.php
-
app/Http/ControllersXxxController.php
モデル
ビュー
コントローラ
- Rails
- config/routes.rb
- Laravel
- routes/web.php(ウェブアプリケーションのルーティング定義)
- routes/api.php(APIエンドポイントのルーティング定義)
ルーティング
-
ORM モデルを介してデータベーステーブルとのやり取りを直感的に
RailsのORM
Railsでは、Active Recordが提供されている
Active Recordは、dbテーブルとオブジェクト指向のモデルクラスをマッピング
モデルクラスはActive Recordの基底クラスを継承し、dbテーブルとの対話を行う
カラムやリレーションはdbスキーマと対応
Active Recordでは、CRUD操作を行うためのメソッドやクエリインターフェースが提供されている
LaravelのORM
Laravelでは、Eloquent ORMが提供されている
Eloquent ORMは、dbテーブルと対応するモデルクラスを定義し、そのモデルを使用してdb操作を行う
Eloquentではモデルクラスのプロパティはカラムと対応し、モデルのインスタンスはテーブルのレコードと対応する
Eloquent ORMは、データの取得、保存、更新、削除などの操作を行うための便利なメソッドやクエリビルダを提供している