Sponsored

লারাভেল কন্ট্রোলার

0
37

লারাভেল নিয়ে এর আগের লেখা গুলোঃ

আমরা জেনেছি কিভাবে রাউটস কনফিগার করতে হয়, কিভাবে ভিউ তৈরি করতে হয়, ডেটাবেজ কানেক্ট করতে হয়, কোয়েরী করতে হয় ইত্যাদি। এখন আমরা জানব কন্ট্রোলার সম্পর্কে। আমরা যদি রাউটস ফাইলটি দেখি, দেখব ওয়েব সাইটের প্রতিটা সেকশনের  জন্য অনেক গুলো কোড লিখতে হচ্ছে। আর আমরা যখন অনেক বড় প্রজেক্ট তৈরি করব, তখন কেমন বিশ্রিই না দেখতে হবে। কোড গুলোকে সুন্দর রাখতে আমরা ব্যবহার করব কন্ট্রোলার। কন্ট্রোলার ভিউ এবং প্রজেক্টের ব্রেইনের মধ্যে একটা ব্রিজ তৈরি করে দেয়। যখন ইউজার কোন রিকোয়েস্ট করবে, কন্ট্রোলার ডেটা কালেক্ট করে ভিউতে পাস করবে। যে কোড গুলো আমরা রাউটস ফাইলে লিখেছি, এগুলো সুন্দর ভাবে লেখার জন্যই কন্ট্রোলার।

কন্ট্রোলার গুলো সাধারনত রাখা হয় Project>app>Http>Controllers ফোল্ডারের মধ্যে। আমরা ম্যানুয়ালি কন্ট্রোলার তৈরি করতে পারি। অথবা আমরা php artisan এর মাধ্যমে জেনারেট করতে পারি। তার জন্যঃ

php artisan make:controller TasksController

এখানে TasksController হচ্ছে কন্ট্রলারের নাম। কমান্ডটি রান করলে TasksController.php ফাইলটি Project>app>Http>Controllers ফোল্ডারে যুক্ত হবে।


<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;

class TasksController extends Controller
{
    //
}

 
যেমন আমরা টাস্ক লিস্ট দেখানোর জন্য রাউটস ফাইলে লিখতে হবেঃ

Route::get('/', 'TasksController@index');

এখানে TasksController হচ্ছে কন্ট্রোলারের নাম। আর index হচ্ছে মেথড। রাউটস ফাইল থেকে কোড গুলো নিয়ে TasksController এ index মেথডে যুক্ত করে দিবঃ


<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;
use App\Task;

class TasksController extends Controller
{
    public function index(){
     $tasks =    Task::all();
     return view('welcome' , compact('tasks'));
}

}

তখন রুটস ফাইল আগের থেকে অনেক ক্লিন দেখাবে। টাস্ক লিস্ট এবং সিঙ্গেল টাস্ক এর জন্য রুটস ফাইলঃ

<?php

Route::get('/', 'TasksController@index');
Route::get('/{id}', 'TasksController@single');

TasksController ফাইলটিঃ

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use App\Http\Requests;
use App\Task;

class TasksController extends Controller
{
    public function index(){
     $tasks =    Task::all();
     return view('welcome' , compact('tasks'));
}


 public function single($id){
     $task =  Task::find($id); 
    return view('task' , compact('task'));
}

}

আমরা মাত্র একটি ফিচার নিয়ে কাজ করেছি। তাই একটি কন্ট্রোলার। এখানে আমরা আরো মেথড যুক্ত করতে পারি। আবার আরো নতুন কন্ট্রোলার তৈরি করতে পারব এভাবে।

Sponsored
Sponsored
Search
Categories
Read More
Tech
অ্যান্ড্রয়েড মোবাইলে ডেভেলপার অপশন চালু করবেন যেভাবে | Techtunes | টেকটিউনস
মোবাইলের মাধ্যমে চ্যাট করার কিছু দারুণ সফটওয়্যার মো. আমিনুল ইসলাম সজীব
By Nettumi 2026-09-26 11:50:49 0 119
Nulled
Grabient - রঙের খেলায় মাত করুন ওয়েব ডিজাইন, কোডিং ছাড়াই! 🌈🎨💻 | Techtunes | টেকটিউনস
প্রাণীদের ঘুম: সৃষ্টিজগতের বিচিত্র এক রহস্য!!!! (Updated) TareqMahbub
By Nettumi 2026-09-21 05:31:16 0 63
Nulled
Why Outsource App Development - Intellectsoft Blog
August 14, 2024...
By Nettumi 2026-09-21 04:45:00 0 66
Job
০৭ পদে চট্টগ্রাম বিভাগীয় কমিশনারের কার্যালয় নিয়োগ বিজ্ঞপ্তি ২০২৬ প্রকাশিত
5/5 - (3 votes)☰ মোট পদের ক্যাটাগরি০৩👥 মোট শূন্যপদ০৭🎓 যোগ্যতাএসএসসি ও এইচএসসি🎂 বয়সসীমা১৮-৩২...
By Nettumi 2026-09-24 18:39:43 0 48
Nulled
WooCommerce Deposits v2.4.6
WooCommerce Deposits v2.4.6 Plugin Free Download. Enable Customers to Pay for Products using a...
By Nettumi 2026-09-17 17:45:51 0 69
‎ ‎ ‎
Nettumi https://nettumi.com