【问题标题】:Cant fetch more items from a user无法从用户那里获取更多项目
【发布时间】:2019-03-24 11:46:40
【问题描述】:

我正在制作一个 laravel 项目,其中用户可以分为 2 件事,品牌和供应商。作为供应商,您可以拥有产品。

问题是作为供应商,我只能用 ->first() 获取 1 个产品,我发现我必须做 ->get(),但它会给我一个错误。

->first() first 回应 = response

->get() get 回应 = response

我错过了什么吗?

提前谢谢

【问题讨论】:

  • 我不知道这是否与错误有关,但请注意,当您使用first()时,它会返回一个对象。但是,当您使用get() 时,它会返回一个集合。因此,您必须对其进行迭代才能获得产品。
  • 你好,请把所有的代码都拍下来,这样我们就可以看到了。我认为问题在于您尝试发送的响应。

标签: laravel graphql


【解决方案1】:

尝试将 nullable() 添加到迁移中的 product id 列。示例:

$table->integer('id')->nullable()

然后在命令行中运行以下命令,

1.composer dump-autoload // updates the changes in your migration

2.php artisan migrate:fresh --seed //new migration and seeds your seeders

【讨论】:

    【解决方案2】:

    在模型上调用first() 将运行查询并将第一个结果作为调用它的任何模型类的实例返回。 get() 运行查询并返回 Illuminate\Database\Eloquent\Collection 的实例,您可以将其视为模型对象的数组。

    基本上,这意味着如果您使用get() 而不是first(),则必须更改代码以期望返回一个集合(数组)。根据您的代码的作用,这可能意味着添加一个循环。

    有关 Laravel 文档的更多信息:Retrieving modelsEloquent Collections

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2019-06-19
      • 1970-01-01
      • 2020-02-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-08
      相关资源
      最近更新 更多