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 关注
- 54 浏览
添加回答
举报