এমভিসি (Model-View-Controller) ফ্রেমওয়ার্কে প্রথম প্রজেক্ট তৈরি করা তুলনামূলকভাবে সহজ, কিন্তু কিছু মৌলিক ধারণা এবং ধাপ অনুসরণ করতে হবে। এখানে আমরা একটি সাধারণ PHP Laravel ফ্রেমওয়ার্কে প্রথম এমভিসি প্রজেক্ট তৈরির প্রক্রিয়া দেখব। Laravel একটি জনপ্রিয় এমভিসি ফ্রেমওয়ার্ক এবং এটি ওয়েব ডেভেলপমেন্টে ব্যাপকভাবে ব্যবহৃত হয়।
প্রয়োজনীয় সরঞ্জাম
- PHP (কমপক্ষে ৭.৪ সংস্করণ)
- Composer (PHP ডিপেনডেন্সি ম্যানেজার)
- Laravel (ফ্রেমওয়ার্ক)
- Text Editor (যেমন: VS Code, Sublime Text)
- XAMPP/WAMP (লোকাল সার্ভার)
১. Laravel ইনস্টল করা
প্রথমে আপনার সিস্টেমে Composer ইনস্টল করতে হবে। Composer দিয়ে Laravel ইনস্টল করতে:
composer global require laravel/installer
এটি Laravel ইনস্টল করার জন্য প্রস্তুত করবে।
২. নতুন Laravel প্রজেক্ট তৈরি করা
Laravel প্রজেক্ট তৈরি করতে Composer ব্যবহার করুন:
laravel new firstmvcproject
এটি একটি নতুন Laravel অ্যাপ্লিকেশন তৈরি করবে firstmvcproject নামে।
৩. সার্ভার চালু করা
Laravel অ্যাপ্লিকেশন চলানোর জন্য নিচের কমান্ডটি ব্যবহার করুন:
cd firstmvcproject
php artisan serve
এখন আপনার ওয়েব ব্রাউজারে http://localhost:8000 এ গিয়ে Laravel এর হোমপেজ দেখতে পাবেন।
৪. রাউট (Route) তৈরি করা
এখন routes/web.php ফাইলে রাউট তৈরি করুন:
Route::get('/welcome', function () {
return view('welcome');
});
এটি /welcome URL এ একটি ভিউ ফাইল (welcome.blade.php) রেন্ডার করবে।
৫. মডেল (Model) তৈরি করা
Laravel এ মডেল তৈরি করতে Artisan কমান্ড ব্যবহার করতে হবে:
php artisan make:model Product
এটি Product নামক একটি মডেল তৈরি করবে।
৬. কন্ট্রোলার (Controller) তৈরি করা
Laravel এ কন্ট্রোলার তৈরি করতে:
php artisan make:controller ProductController
এটি ProductController তৈরি করবে, যেখানে আপনি মডেল থেকে ডেটা নিয়ে ভিউতে পাঠাবেন।
৭. কন্ট্রোলারে ফাংশন যোগ করা
এখন app/Http/Controllers/ProductController.php ফাইলে একটি ফাংশন যোগ করুন, যা মডেল থেকে ডেটা নিয়ে ভিউতে পাঠাবে:
namespace App\Http\Controllers;
use App\Models\Product;
class ProductController extends Controller
{
public function show()
{
$products = Product::all();
return view('products', compact('products'));
}
}
এটি Product মডেল থেকে সমস্ত ডেটা নিয়ে products ভিউতে পাঠাবে।
৮. ভিউ তৈরি করা
এখন resources/views/products.blade.php ফাইলে একটি ভিউ তৈরি করুন, যা ডেটা দেখাবে:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Products</title>
</head>
<body>
<h1>Products List</h1>
<ul>
@foreach ($products as $product)
<li>{{ $product->name }} - {{ $product->price }}</li>
@endforeach
</ul>
</body>
</html>
এটি মডেল থেকে পাওয়া ডেটার তালিকা প্রদর্শন করবে।
৯. রাউট কনফিগার করা
এখন routes/web.php ফাইলে রাউট কনফিগার করুন যাতে কন্ট্রোলারের ফাংশন কাজ করতে পারে:
Route::get('/products', [ProductController::class, 'show']);
এটি /products URL এ কন্ট্রোলারের show ফাংশন কল করবে।
১০. ডেটাবেস কনফিগারেশন
Laravel এ ডেটাবেস কনফিগার করতে .env ফাইলটি সম্পাদনা করুন:
DB_CONNECTION=mysql
DB_HOST=127.0.0.1
DB_PORT=3306
DB_DATABASE=your_database_name
DB_USERNAME=your_username
DB_PASSWORD=your_password
এটি আপনার ডেটাবেসের কনফিগারেশন সঠিকভাবে সেট করে দিবে।
১১. মাইগ্রেশন (Migration) চালানো
ডেটাবেসে টেবিল তৈরি করতে মাইগ্রেশন চালান:
php artisan migrate
এটি ডেটাবেসে আপনার প্রয়োজনীয় টেবিল তৈরি করবে।
১২. প্রথম এমভিসি প্রজেক্ট চলানো
এখন আপনার http://localhost:8000/products এ গিয়ে আপনি আপনার তৈরি করা প্রজেক্টের ফলাফল দেখতে পারবেন। এটি Product মডেল থেকে ডেটা নিয়ে products.blade.php ভিউতে প্রদর্শন করবে।
এভাবে, Laravel ব্যবহার করে প্রথম এমভিসি প্রজেক্ট তৈরি করা সম্ভব। এই প্রক্রিয়াটি বুঝে গেলে, আপনি আরও উন্নত ফিচার এবং ফাংশনালিটি যোগ করতে পারবেন, যেমন ফর্ম সাবমিশন, ডেটা আপডেট, এবং ইউজার অথেনটিকেশন।
Read more