php - 拉拉维尔 5.5 : MongoDB & hasManyThrough() relation

标签 php mysql mongodb laravel-5.5

我将 MongoDB 与 Laravel 结合使用:https://github.com/jenssegers/laravel-mongodb

我有两个表(提要、用户)和 MongoDB 上的一个集合(文章),其形式如下:

articles (MongoDB):

  • _id (ObjectID)
  • feed_id
  • title

feeds (MySQL):

  • id
  • user_id
  • name

users (MySQL):

  • id
  • name

我想在通过“feeds”时检索用户的所有文章。

为此,我在用户模型中使用 hasManyThrough() 关系:

public function articles()
    {
        return $this->hasManyThrough(
            Article::class,
            Feed::class,
            'user_id',
            'feed_id',
            '_id',
            'id'
        );
    }

但问题是,在每个用户上,我列出了相同的文章,看起来它没有考虑 user_id...

最佳答案

https://github.com/jenssegers/laravel-mongodb套餐不支持 $this->hasManyThrough - 关系。

关系支持的关系有:

  1. 有一个
  2. 有很多
  3. 属于
  4. 属于ToMany
  5. 嵌入One
  6. 嵌入很多

您可以查看文档: https://github.com/jenssegers/laravel-mongodb

关于php - 拉拉维尔 5.5 : MongoDB & hasManyThrough() relation,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46449203/

相关文章:

javascript - 如果文本框为空则发出警报

php - 使用更新从前端编辑帖子

php - 在 Laravel 中允许没有 'Access-Control-Allow-Origin' header

javascript - Ajax 与其他参数序列化,

c# - Datagridview 以新形式编辑

php - 命名空间迫使我的类(class)找不到

php - 在 PHP 中执行参数化查询的最佳实践?

mongodb - 在 MongoDB 中创建文本索引时出错

mongodb - typeorm:在新项目上创建的迁移无法识别实体 - "No changes in database schema were found - cannot generate a migration."

mongodb - StitchServiceError  "aws: "aws_service“是必需的字符串”,errorCodeName : InvalidParameter