Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/laravel/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel 多对多关系中的范围查询_Laravel_Octobercms - Fatal编程技术网

Laravel 多对多关系中的范围查询

Laravel 多对多关系中的范围查询,laravel,octobercms,Laravel,Octobercms,我创建了两个模型,“Post”和“Category”。这是一种多对多的关系,非常有效 我的表格如下: alex_blog_posts:在这里,帖子存储在“title”、“published”等列中 alex_blog_categories:类别存储在“title”、“parent_id”等列中 alex_blog_posts_categories:其中,使用“post_id”、“category_id”列存储帖子和类别之间的关系 假设我想筛选与名为“category 1”的类别关联的所有帖子

我创建了两个模型,“Post”和“Category”。这是一种多对多的关系,非常有效

我的表格如下:

  • alex_blog_posts:在这里,帖子存储在“title”、“published”等列中
  • alex_blog_categories:类别存储在“title”、“parent_id”等列中
  • alex_blog_posts_categories:其中,使用“post_id”、“category_id”列存储帖子和类别之间的关系
假设我想筛选与名为“category 1”的类别关联的所有帖子

我对十月和拉威尔还不够熟悉,我被困在这里了。对于laravel expert来说可能非常简单,但我需要一个具体的工作示例,因为我尝试的所有事情都失败了:/

感谢您的帮助

laravel拥有“whereHas”:

在post模型上,您需要编写此查询:

$posts = Post::whereHas($relationName, function ($query) {
     $query->where('title', =, 'Category 1');
})->get();
$relationName-应该是在模型中定义关系的函数名(etc:“categories”)

larvel具有“whereHas”:

在post模型上,您需要编写此查询:

$posts = Post::whereHas($relationName, function ($query) {
     $query->where('title', =, 'Category 1');
})->get();
$relationName-应该是在模型中定义关系的函数的名称(等:“类别”)