Свойство полиморфной модели отношений «многие ко многим» не возвращает коллекцию, а ->get() возвращает.Php

Кемеровские программисты php общаются здесь
Ответить Пред. темаСлед. тема
Гость
 Свойство полиморфной модели отношений «многие ко многим» не возвращает коллекцию, а ->get() возвращает.

Сообщение Гость »


У меня есть две модели Product и ProductType, обе из которых связаны с моделью Usp. Я настроил модели следующим образом.

класс Продукт расширяет модель { используйте HasFactory, SoftDeletes; защищенный $guarded = []; публичная функция usps(): MorphToMany { return $this->morphToMany(Usp::class, 'uspable'); } } класс ProductType расширяет модель { используйте HasFactory, SoftDeletes; защищенный $guarded = []; публичная функция usps(): MorphToMany { return $this->morphToMany(Usp::class, 'uspable'); } } класс Usp расширяет модель { используйте HasFactory, SoftDeletes; защищенный $guarded = []; продукты общедоступной функции(): MorphToMany { return $this->morphedByMany(Product::class, 'uspable'); } публичная функция ProductTypes(): MorphToMany { return $this->morphedByMany(ProductType::class, 'uspable'); } } Насколько я вижу, у меня все настроено правильно, но по какой-то странной причине, когда я вызываю свойство модели ProductType, оно возвращает null (т. е. ProductType::find(1)->usps). Но когда я вызываю метод Query Builder ProductType::find(1)->usps()->get(), он дает правильные результаты. Для модели Product и ->usps, и ->usps()->get(), похоже, работают нормально. Я понятия не имею, что я здесь делаю не так.
Реклама
Ответить Пред. темаСлед. тема

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

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

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

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

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

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