I am able to use Tinker to see relationship between product and reviews. Results are returned.
php artisan tinker
>> App\Model\Product::find(1)->reviews
How do I create a route and a controller to show this relationship because the show method is already being used to show by ID. Do I use the product controller or the reviews controller? Can I show both ways reviews by product and products by reviews?
UPDATED
Here is my products data
Data: [
{
productName: "television",
price: null,
id: 1
},
Here is my reviews data
data: [
{
id: 2,
customerId: "4",
booktitle: null,
description: null,
likes: null,
customer: null,
body: null,
star: null,
productId: "1"
},
Here is my review model
<?php
namespace App;
use App\Product;
use Illuminate\Database\Eloquent\Model;
class Review extends Model
{
public $timestamps = true;
protected $table = 'REVIEWS';
protected $fillable = [
'booktitle', 'description', 'updated_at', 'created_at',
];
/* public function customer()
{
return $this->hasMany(Customers::class);
}*/
public function product()
{
return $this->hasMany(Product::class);
}
}
I know I don't have a review field in the product table.
This route http://localhost:8000/api/v1/reviews/2/products is trying to run a query select * from [PRODUCTS] where [PRODUCTS].[review_id] = 2 but review_id is not a column name in my table so I don't know where this is being picked up from.
This route http://localhost:8000/api/v1/products/2/reviews is returning a 200 ok but is a blank screen.
via Chebli Mohamed
Aucun commentaire:
Enregistrer un commentaire