laravel - 方法 Illuminate\Database\Eloquent\Collection::post 不存在
问题描述
抱歉这么愚蠢的问题,但我现在处于死胡同,我正在使用 Laravel(第一次顺便说一句)做一个个人项目,我遇到了一些问题。
我尝试这样做{{ $kategori->post()->count() }}
(顺便说一句,这是可行的),但是使用了用户表。我已经设置了外键和东西。
我也尝试修改User.php
(参见代码)但仍然没有按我的预期工作。我需要一些帮助。我正在使用 Laravel “ php artisan make:auth
”
我已经尝试编辑模型(User.php
和Post.php
)和控制器,但我仍然无法弄清楚出了什么问题。
Post.php
public function user()
{
return $this->belongsTo('App\User', 'user_id');
}
用户.php
public function post()
{
return $this->hasMany('App\Post','user_id');
}
控制器
use App\User;
// other methods in the Controller
public function index()
{
$posts = post::paginate(5);
$user = User::post;
return view('index', compact('posts', 'user'));
}
刀片视图
{{ $user->post()->count() }}
解决方案
我不明白源代码的主要目的但是您可以使用以下代码来计算关系
$user_post_count = User::find($id)->post()->count();
$all_user_with_post = User::all()->with('post');
$all_user_with_post_count = User::all()->withCount('post');
推荐阅读
- javascript - 带有历史推送的 Reactjs 路由,但仅更改 URL 的视图
- google-maps - 在 DirectionFinder 中更改 setAvoid() 后计算持续时间和距离的问题
- html - 悬停在我的导航菜单中不起作用
- android - 在片段内的 ArrayList 中实现对 RelativeLayout 的意图
- r - 如何通过使用数据集中的 2 列来制作向量
- angular - 为什么 Angular 教程不更新 .subscribe() 中的英雄列表?
- android-studio - 在 Android Studio 编辑器或 IntelliJ IDEA 中更改字体
- sql - 使用联合连接两个表时,如何在 sql 中分别对两个表使用 order by 子句
- php - 如何从 JSON 数组中排除撇号?
- python - 无法使用 pip 安装 CuPy 和 PyTorch