Wpis z mikrobloga

Piszę sobie appkę na #laravel i mam pewien problem z cachowaniem relacji, otóż mam model z 3 relacjami. model ten wyświetlam w liście po 25 rekordów i potrzebuję w tej liście również dane z relacji. Zrobiłem coś takiego:

public function country() {
return Cache::rememberForever($this->getCacheKey(Country::class, $this->country_id), function() {
return $this->belongsTo(Country::class);
});
}

Jednak w takim przypadku krzyczy że nie mogę serializować PDO co jest oczywiste, gdy dam toArray() to krzyczy że zwracany obiekt musi być Relation:

Relationship method must return an object of type Illuminate\Database\Eloquent\Relations\Relation


W jaki sposób to robicie? Za każdym razem robić SQLkę po dane które są w większości takie same jest bez sensu.

#php
  • 6