我試圖讓我的路由將新行插入到數據庫中,並且如果成功返回某個JSON中的記錄(使用其新的主鍵ID)。我收到以下錯誤:將Laravel-4雄辯的查詢結果轉換爲數組
{
"error":
{
"type":"BadMethodCallException",
"message":"Call to undefined method Illuminate\\Database\\Query\\Builder::to_array()",
"file":"\\vendor\\laravel\\framework\\src\\Illuminate\\Database\\Query\\Builder.php",
"line":1418
}
}
這是我的路線:
Route::post('/client/create', function()
{
$client = Client::create(Input::all());
if($client)
{
return json_encode(array('Result' => 'OK', 'Record' => $client->to_array()));
}
else
{
return json_encode(array('Result' => 'ERROR', 'Message' => 'Error Inserting Record =('));
}
});
按照Laravel文檔我讀過,你應該使用->to_array()
到模型轉換成數組和::create
返回模型的一個實例,如果成功插入。我檢查了數據庫,並且記錄正在插入。
嘗試'''返回$ client-> toArray();'''並且您也可以使用'''return $ client-> toJson();'''if這就是你需要的。 –
@AntonioCarlosRibeiro謝謝,這是有效的!它沒有傳入插入行的id,但我總是可以在其他地方找到它。 –