Laravel의 Orders_Controller
에 getOrders ($ user)라는 함수가 있습니다. 원시 DB 쿼리를 호출하고 반환 할 JSON 배열을 작성합니다.Laravel Routes.php의 통화 컨트롤러 기능
내 경로 파일에서이 함수를 호출하는 방법을 알 수 없습니다.
기본적으로 경로에서 POST를 수신하고 새 Order를 삽입 한 다음이 Routes 함수에서 getOrders (user)를 호출하여 주어진 사용자의 모든 기존 Orders를 가져 오려고합니다.
Routes.php에서이 함수를 호출하는 방법을 알아낼 수 있습니까? (컨트롤러 폴더)
Routes.php
//Handle a new order POST
Route::post('order', array('do' => function() {
...
... //HANDLE POST DATA AND INSERT NEW ORDER
...
//GET ALL ORDERS FOR THIS USER FROM ORDER CONTROLLER
$userOrders = Order_Controller::myOrders($thisUser);
}
order.php
class Order_Controller extends Base_Controller
{
public function myOrders($user){
return DB::query("SELECT ...");
}
}
그래서 컨트롤러에서 POST 데이터를 실제로 처리하고 컨트롤러에서이 함수를 호출해야합니까? 기존 사이트에서 Laravel을 구현하는 가장 좋은 방법을 이해하려고 노력하고 있지만 Route/Controller/Model이 어떻게 작동하는지 잘 모르겠습니다. – jamis0n
@ jamis0n 당신도 할 수 있습니다 (내 취향). 당신은 당신의 컨트롤러를 등록하고 당신의 경우처럼 당신의 라우팅이 간단하다면 이벤트가 필요하지 않습니다. 컨트롤러를 등록하려면 라우트 파일에서'Route :: controller (array ('order', 'anothercontroller'));를 호출해야합니다. – afarazit
Gotcha ... 그래서 Routes.php에서 POST 라우트를 제거하면 방금 Lolavel 예제로 구현 한 경우 주문에 대한 POST가 주문 컨트롤러에 잡힐 것입니다. – jamis0n