2 回答

TA貢獻1817條經驗 獲得超6個贊
該屬性不存在的原因是因為結果是一個集合而不是一個數組(在操作注釋中找到)
所以你試圖note從一個看起來像這樣的集合中獲取:
[
{
"id":1,
"note":"to do one",
"created_at":"2020-04-12 08:25:00",
"updated_at":"2020-04-13 07:20:54",
"description":"description for todo one"
}
]
當您打電話時,$todo->note您正在搜索此行:
[
{ # <-- You're searching this line
"id":1,
"note":"to do one",
"created_at":"2020-04-12 08:25:00",
"updated_at":"2020-04-13 07:20:54",
"description":"description for todo one"
}
]
所以你的代碼返回一個集合而不是一個數組。一個數組看起來像這樣:
{ # <-- Starts with open curly bracket instead of open square bracket
"id":1,
"note":"to do one",
"created_at":"2020-04-12 08:25:00",
"updated_at":"2020-04-13 07:20:54",
"description":"description for todo one"
}
你需要弄清楚它為什么要發送一個集合。
從您的代碼來看,我發現了一個潛在的問題:
public function show(todo $todo) # <- What is 'todo $todo'?
{
$todo=todo::find($todo);
return view('demo')->with('todo',$todo);
}
什么是todo $todo,你在某處調用 show 函數?默認情況下,Laravel 通過網絡路由發送該 ID。所以嘗試將其更新為:
public function show($id) #<-- change this to '$id'
{
$todo = Todo::find($id); #<-- Change this to '$id'
return view('demo')->with('todo',$todo);
}
讓我知道是否可以解決問題。
編輯:你真的需要修正你的大寫。
- 2 回答
- 0 關注
- 99 瀏覽
添加回答
舉報