Data Display
1. To display products by category
2. To display products by subcategory
3.. To display subcategory by category
1. To display products by category in Larave
To display products by category in Laravel (Blade + Controller + Model + Database), you need to follow a few simple steps. Here's a full example:
Step 1: Models
// app/models/Category.php
{
public function products()
{
return $this->hasMany(Product::class);
}
}
// app/models/Product.php
{
public function category()
{
return $this->belongsTo(Category::class);
}
}
use App\Models\Category;
public function showProductsByCategory($category_id)
{
$category = Category::with('products')->findOrFail($category_id);
return view('products.by_category', compact('category'));
}
Route::get('/category/{id}/products', [ProductController::class, 'showProductsByCategory']);
Products in Category: {{ $category->category_name }}
@foreach($category->products as $product)
-
{{ $product->product_name }} - ${{ $product->price }}
@endforeach
2. To display subcategory by category in Larave
Laravel এ যদি আপনি প্রতিটি Category অনুযায়ী SubCategory গুলো দেখাতে চান, তাহলে আপনাকে Category এবং SubCategory এর মধ্যে সম্পর্ক (relationship) তৈরি করতে হবে এবং তারপর সেগুলো view-তে দেখাতে হবে।
To display subcategory by category in Laravel (Blade + Controller + Model + Database), you need to follow a few simple steps. Here's a full example:
Step 1: Models
// Category.php
class Category extends Model
{
public function subcategories()
{
return $this->hasMany(SubCategory::class);
}
}
// SubCategory.php
class Product extends Model
{
public function category()
{
return $this->belongsTo(Category::class);
}
}
use App\Models\Category;
public function showCategoriesWithSub()
{
$categories = Category::with('subcategories')->get();
return view('your-view-name', compact('categories'));
}
@foreach ($categories as $category)
{{ $category->name }}
@foreach ($category->subcategories as $sub)
- {{ $sub->name }}
@endforeach
@endforeach
3. To display Products by subcategory in Larave
Laravel এ যদি আপনি প্রতিটি SubCategory অনুযায়ী Product গুলো দেখাতে চান, তাহলে আপনাকে Productএবং SubCategory এর মধ্যে সম্পর্ক (relationship) তৈরি করতে হবে এবং তারপর সেগুলো view-তে দেখাতে হবে।
To display Products by Subcategory in Laravel (Blade + Controller + Model + Database), you need to follow a few simple steps. Here's a full example:
Step 1: Models
// Subcategory.php
class Category extends Model
{
public function products()
{
return $this->hasMany(Product::class);
}
}
// Product.php
class Product extends Model
{
public function subcategory()
{
return $this->belongsTo(SubCategory::class);
}
}
use App\Models\SubCategory;
public function productsBySubcategory($id)
{
$subcategory = SubCategory::with('products')->findOrFail($id);
return view('products.subcategory_products', compact('subcategory'));
}
Subcategory: {{ $subcategory->name }}
@foreach($subcategory->products as $product)
{{ $product->name }}
{{ $product->description }}
Price: {{ $product->price }}
@endforeach
Route::get('/subcategory/{id}/products', [ProductController::class, 'productsBySubcategory']);
Alternate Method
2. To display Product by category in Larave
Laravel এ যদি আপনি প্রতিটি Category অনুযায়ী product গুলো দেখাতে চান, তাহলে আপনাকে নিচের পদ্ধতি আনুসরন করতে হবে।
Step 1: Web Routes
Route::controller(PageController::class)->group(function(){
Route::get('/pages/categoryPage/{id}/{slug}', 'categoryPage')->name('pages.categoryPage');
});
//product display by category id
public function categoryPage($id){
$categories = Category::all();//category show in menubar
//product display by category_id
$category_id = Post::where('category_id', $id)->value('category_id');
$posts = Post::where('category_id', $category_id)->latest()->get();
return view('pages.categoryPage', compact('categories','posts'));
}
My Projects
@foreach ($categories as $data)
{{Str::limit($data->category_name, 15)}}
@endforeach
@if($posts->isEmpty())
Data Not Found....
@else
@forelse($posts as $post)
@endforeach
@endif