Laravel вызов неопределенной связи [бренд] на модели [приложение\продукт]
Я пытаюсь вернуть свои данные модели с ресурсом, но он говорит::
Вызов неопределенного отношения [бренд] к модели [приложение\продукт].
Код
product.php
public function brand()
{
return $this->belongTo(Brand::class);
}
brand.php
public function products()
{
return $this->hasMany(Product::class);
}
controller
public function show($slug)
{
$product = Product::where('slug', $slug)->with(['photos', 'variations', 'options', 'brand'])->where('active', 'yes')->first();
return response()->json([
'data' => new ProductFrontResource($product),
'message' => 'Product retrieved successfully.',
]);
}
ProductFrontResource.php
use App\Http\Resources\CategoryResource;
class ProductFrontResource extends JsonResource
{
public function toArray($request)
{
$arrayData = [
'id' => $this->id,
'name' => $this->name,
'slug' => $this->slug,
'brand' => $this->brand->name,
'categories' => CategoryResource::collection($this->whenLoaded('categories')),
'created_at' => (string) $this->created_at,
'updated_at' => (string) $this->updated_at,
];
return $arrayData;
}
}
Есть идеи?
Обновление
Если я удаляю brand
из with()
, он говорит::
Call to undefined method App\Product::belongTo()
У вопроса есть решение - Посмотреть?

принадлежать не принадлежать
Источник

черт! :)))) спасибо дружище.
Источник

могу ли я сделать это в качестве ответа ? :D для получения очков :)
Источник

конечно, давай.
Источник

пожалуйста, держите в течение 5 мин все еще не позволено принять ответ
Источник

Ах да, отметил :)
Источник
Ответы - Laravel вызов неопределенной связи [бренд] на модели [приложение\продукт] / Laravel call to undefined relationship [brand] on model [App\Product]
Является ответом!

27.01.2020 07:40:51
измените отношения с брендом на это.
public function brand()
{
return $this->belongsTo(Brand::class);
}
источник фреймворк Laravel красноречивый
Помочь в развитии проекта: