0 レビュー
2 回答
php-コントローラーまたはモデルクラス内のLaravel配置クエリ
#1
Class controller {
$customer = Model\customer::find($id);
}
#2
Class controller {
$customer = new Model\customer;
$customer = $customer->data($id);
}
Class Model {
public function data($id) {
return self::find($id);
}
}
laravaは初めてですが、MVCクエリについて質問があります。
多くの人が#1のようにコントローラー内にクエリを配置するのを見ました
私は通常、クエリをモデルクラス内に配置するのが好きです。
何か提案はありますか?
わからない
0
レビュー
答え :
解決策:
私によると、MVCは-ModelViewControllerを意味します。
一般的な言語では、モデルにはデータベースクエリ関連のものが含まれている必要がありますが、ビューでは常に変数を使用してビューデータを入力し、最後にコントローラーは通常、リクエストをキャッチし、リクエストに応じて論理的な機能を実行してレスポンスを送信するためのものです。
<?php
namespace App\Models;
class ExampleModel
{
// All the database related methods like - all, paginate, find, where, etc would goes in the model...
}
ビューの場合
<html>
...
YOUR_CONTENT_HERE
...
</html>
コントローラーの場合
<?php
namespace App\Controllers;
class ExampleController
{
public function index()
{
$request = request()->all();
... do some logical work here ...
return response($data);
}
}
MVCコード構造はどのようになるか-私の意見では
これがお役に立てば幸いです!
わからない
0
レビュー
答え :
解決策:
モデルのfind()
メソッドを直接使用してエンティティを取得しても問題ありません。
ただし、より大きなアプリケーションを開発している場合は、すべてのロジックを独自のクラスに移動することを検討する必要があります。コントローラは、httpリクエスト、セッションなどから入力を収集し、サービスのメソッドを呼び出して実際の作業を行う必要があります。そうすれば、コードがコントローラーのアクションやルートに結び付けられることはありません。
わからない
同様の質問
私たちのウェブサイトで同様の質問で答えを見つけてください。