Php Laravel-Foreach循环试图获取非对象的属性
我有一个数据库表 id |名称| url | 1 |自行车|自行车| 2 |自动|自动| 我想从表中获取所有名称,以便使用foreach循环进行查看。但它又回来了 正在尝试获取非对象的属性 控制器 模型 看法 我明白了,我无法解决它。$cat=Category::where'url',$url->firstorfail;这只返回一个集合,而不是集合的数组。如果要返回所有值,请使用get:Php Laravel-Foreach循环试图获取非对象的属性,php,laravel,foreach,eloquent,Php,Laravel,Foreach,Eloquent,我有一个数据库表 id |名称| url | 1 |自行车|自行车| 2 |自动|自动| 我想从表中获取所有名称,以便使用foreach循环进行查看。但它又回来了 正在尝试获取非对象的属性 控制器 模型 看法 我明白了,我无法解决它。$cat=Category::where'url',$url->firstorfail;这只返回一个集合,而不是集合的数组。如果要返回所有值,请使用get: 如果要显示1个类别,则应具有: 控制器 模型 看法 尝试过但没有成功。尝试获取非object的属性您可以在
如果要显示1个类别,则应具有: 控制器 模型 看法
尝试过但没有成功。尝试获取非object的属性您可以在返回语句之前显示dd$category的输出吗?我的意思是dd this$category=category::where'url',$url->get;您通过firstorfail获得1个模型,但在视图中您正在迭代。。。要么删除foreach,要么传递一个类别数组。我尝试用get替换firstor或fail,但仍然没有成功。如果我尝试$cat->all。它对成员函数的调用全部基于布尔值。当使用/或排序指定where子句时,将使用issue?get。如果要显示1项,请删除模板中的foreach。如果需要多个,则将阵列传递到视图将导致堆栈溢出!请不要只回答源代码。试着提供一个关于你的解决方案如何工作的很好的描述。请参阅:。谢谢
public function category($url, request $id)
{
$cat = Category::where('url', $url)->firstorfail();
return view ('view', compact('category'));
}
class Category extends Model
{
protected $fillable = ['name', 'url'];
}
@foreach($category as $cat)
{{ $cat->name }}
//{{ $cat['name] }} does not return anything.
@endforeach
//{{ $cat->name }} returns only one category name
$category = Category::where('url', $url)->get();
return view ('view', compact('category'));
public function category($url, request $id)
{
$category = Category::where('url', $url)->firstorfail();
return view ('view', compact('category')); //sends 1 entity to the view
}
class Category extends Model
{
protected $fillable = ['name', 'url'];
}
{{-- Removed the foreach becaus you have 1 entity sent from the controller --}}
{{ $category->name }}
public function category($url, request $id)
{
$cat = Category::where('url', $url)->firstorfail();
return view ('view')->with('category',$cat);
}