当我尝试使用AJAX
选项获取数据时,我收到一条错误消息,指出一列不存在。
我正在使用的主表是users
,另一个是orders
。在User
模型中,两个表之间都有一个关系集。在这种情况下,orders
表具有user_id
作为FK。
public function orders()
{
return $this->hasMany(Order::class);
}
然后在UserCrudController
中设置order
列,以使用访问器获取数据:
[
'label' => 'Orders',
'name' => 'order_count',
],
// This method is in the `User` model
public function getOrderCountAttribute() {
return count($this->orders);
}
因此,当我启用AJAX
时,我得到一个错误,指出order_count
表中不存在列User
。未达到该关系和访问器,因为我尝试使用die()
。
有没有一种方法可以使用AJAX
运行查询?我正在使用背包3和laravel 5.4
答案 0 :(得分:1)
您应该能够使用model_function列类型。据我所知,对于您的情况是:
[
// run a function on the CRUD model and show its return value
'name' => "order_count",
'label' => "Orders", // Table column heading
'type' => "model_function",
'function_name' => 'getOrderCountAttribute', // the method in your Model
// 'limit' => 100, // Limit the number of characters shown
]
希望有帮助!