Свойство [ID] не существует в этом экземпляре коллекции Laravel 9.Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Свойство [ID] не существует в этом экземпляре коллекции Laravel 9.

Сообщение Anonymous »


Контекст: я обновляю старое приложение Laravel с php 5 до php 8 и с laravel 6 до laravel 9. Используемая БД — MongoDB, и моя обычная работа — MySQL, поэтому я не уверен, что это просто проблема из-за одного из обновлений PHP/Laravel, которое мне не удалось найти в Интернете, или это проблема Mongo. Я не писал исходное приложение, поэтому многие из способов, которыми предыдущий разработчик писал вещи, не так, как я бы написал, но я стараюсь не полностью выпотрошить это приложение и не начинать заново.

В конструкторской части класса, которая вызывается для создания счетов-фактур, мы получаем коллекцию данных счетов-фактур для печати из нашей базы данных. Я получаю сообщение об ошибке «Свойство [id] не существует в этом экземпляре коллекции» из этого кода:

if (!isset($invoice)){ $invoice = Order_Invoice::with(array( 'заказ', 'services'=>function($query){$query->orderBy('entity_order')->orderBy('service_order');}, 'services.entity', 'services.locations', 'services.fees'=>function($query){$query->orderBy('sort_order');} ))->найти($id); } $this->счет = $счет; $this->id = $invoice->id; Когда я выполняю «dd($invoice->id);» перед строкой, выдающей ошибку, страница умирает, и я получаю четкий идентификатор из наших таблиц.

Может быть, что-то упущено, что может привести к тому, что коллекция выдаст ошибку «Идентификатор не существует»?

Я попробовал dd() с несколькими разными переменными. Я переработал приведенный выше запрос, чтобы использовать запрос first() вместо find, поскольку идентификатор не всегда является целым числом, но это также приводило к собственным ошибкам. Я удалил все соединения with, чтобы посмотреть, не вызывает ли это проблем.
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Php»