我在 Laravel 中的 Orders_Controller
中有一个名为 getOrders($user) 的函数。它调用原始数据库查询并构建一个 JSON 数组以返回。
我不知道如何从我的路由文件中调用这个函数。
基本上我在路由中收到一个 POST,插入新订单,然后我想从此路由函数调用 getOrders(user) 以获取给定用户的所有现有订单。
有人可以帮我弄清楚如何从 Routes.php 中调用此函数吗?
路线.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(在 Controllers 文件夹中)
class Order_Controller extends Base_Controller
{
public function myOrders($user){
return DB::query("SELECT ...");
}
}
原文由 jamis0n 发布,翻译遵循 CC BY-SA 4.0 许可协议
正如 larauser 所建议的,您可以将 myOrders() 方法移至模型并静态调用它。这是一个例子
然后在你的路线中你可以做
我猜你传递的是用户 ID,这就是我在路由中使用 (:num) 的原因。
希望有所帮助。