对不起,!有一个困惑,如何将我的参数纳入模型与控制器在Laravel.这是我的代码模型:
class Posts extends Model
{
use HasFactory;
// protected $fillable = ['title','excerpt','content'];
protected $guarded = ['post_id'];
// protected $with = ['author','category'];
public function category(int $limit)
{
return $this->belongsTo(Categories::class, 'category_id','category_id')->limit($limit);
}
public function author(int $limit)
{
return $this->belongsTo(User::class, 'user_id','user_id')->limit($limit);
}
}
这是我在Controller上的代码:
class PostsController extends Controller
{
public function index()
{
$banyak = Posts::count();
if($banyak<=0){
return view('blog',[
"title"=>'All Post',
'posts'=>[]
]);
}else if($banyak>0){
return view('blog',[
"title"=>'All Post',
'posts'=>Posts::with(['category'=>(10),'author'])->latest()->get()
]);
}
}
}
我对如何在Controller中将值10输入到“category”和“author”方法Model中的$limit参数感到困惑
From there
to there
1条答案
按热度按时间n3h0vuf21#
有一种过滤关系的方法:
但是,根据https://laravel.com/docs/9.x/elaborent-relationships#constraining-eager-loads,您不能 * 限制 * 关系查询:
约束急切加载时,不能使用 limit 和 take 查询生成器方法。