Я столкнулся со странной ошибкой, из-за которой я почесал голову.
Я использую пакет, в котором мета-информация хранится в мета-таблице. Так что мои модели имеют мета-отношение. Пакет использует этот простой метод для извлечения метаданных.
public function getAllMeta()
{
return collect($this->meta->pluck('value', 'key'));
}
Итак, что вы ожидаете, это набор метаданных, если он существует, или пустая коллекция, верно? Вот что он показывает на моем локальном сервере разработки. Насколько я понимаю, при попытке извлечь данные из отношения он вернет ноль, если нет связанной записи.
Однако, когда в производстве нет мета-отношения (нет данных), он возвращает это исключение: Call to a member function pluck() on null
Я не могу понять, почему это происходит.
- Prod и dev используют Laravel
5.6.26
.
- Оба
composer.json
файла идентичны . Для проверки я использовал проверку различий.
- И prod, и dev запустили
composer update
, чтобы убедиться, что все зависимости идентичны .
Итак, что мне не хватает? Этот же код возвращает пустую коллекцию в dev и выдает исключение в prod?