লারাভেল রাউট, লারাভেল ভিউ এবং লারাভেল ব্লেড টেমপ্লেট সম্পর্কে আজকের আর্টকেল।
একটা প্রশ্ন দিয়েই শুরু করি। ইন্টারনেটে আমাদের ওয়ার্ক সাইকেলটা কেমন হয়?
আমরা প্রথমে কিছু টাইপ করে url এ সার্চ করি। সেই সার্চ করা কী-ওয়ার্ড সম্পর্কিত কিছু কনটেন্ট বা তথ্য সার্চ ইঞ্জিন আমাদের সামনে উপস্থাপন করে। সেই কনটেন্ট গুলিই আমরা দেখতে পাই। তাইতো? লারাভেল রাউট
লারাভেল রাউট হচ্ছে URL । তাহলে একটি URL তৈরী করতে হলে একটি রাউট তৈরী করতে হবে। আর রাউট তৈরি করা হয়ে গেলে ইউজার সেটি লিখে URL এ সার্চ করতে পারে। এখন প্রশ্ন হচ্ছে সার্চ করলেই কি দেখা যাবে? হ্যা, যদি ভিউ থাকে তাহলে দেখা যাবে।
লারাভেল ভিউ
এপ্লিকেশনে আমরা যা কিছু দেখতে পাই তাই লারাভেল ভিউ। হোম পেইজ একটি ভিউ, ব্লগ পেইজ একটি ভিউ, আবাউট পেইজ একটি ভিউ। এভাবে অনেক অনেক ভিউ তৈরি করতে হয় একটি ওয়েব সাইতের জন্য। এখন প্রশ্ন হলো ভিউ তৈরি করবো কিভাবে?
লারাভেল ব্লেড টেমপ্লেট
ওয়েব সাইটের প্রতিটি পেইজ এর জন্য যে ফাইল তৈরি করতে হয় সেই ফাইলকেই ব্লেড টেমপ্লেট বলে। বুঝতে একটু কঠিন মনে হচ্চে? HTML এর ক্ষেত্রে কোর্স পেইজ এর জন্য আমাদেরকে courses.html নামে একটি ফাইল তৈরি করতে হতো। লারাভেল এর ভাষায় যে পিএইচপি ফাইলগুলো তৈরি করতে হয় সেই ফাইল গুলোকেই ব্লেড টেমপ্লেট বলে। html এর ক্ষেত্রে যেমন ফাইল এক্সটেনশন ছিলো .html ঠিক তেমনি লারাভেল এর জন্য ফাইল এক্সটেনশন হবে .blade.php । তাহলে কোর্স পেইজ অর্থাৎ কোর্স ভিউ এর জন্য ফাইল নেম হবে courses.blade.php ।
টেমপ্লেট, ভিউ এবং রাউট কিভাবে তৈরি করবেন
resources ফোল্ডার এর ভেতরে views নামে একটি ফোল্ডার পাবেন। সেই ফোল্ডারের ভেতর এই ফাইল অর্থাৎ ব্লেড টেমপ্লেট গুলো তৈরি করতে হয়। ডিফল্টভাবে welcome.blade.php নামে এইটি টেমপ্লেট তৈরি করা থাকে। যদি নামে আরো একটি টেমপ্লেট তৈরি করি তাহলে নামে আরো একটি ভিউ তৈরি হয়ে যাবে।
এখন রাউট তৈরি করতে হলে app ফোল্ডারের মধ্যে http ফোল্ডার রয়েছে। সেই ফোল্ডারের মধ্যে routes.php নামে যে ফাইল পাবেন সেই ফাইলেই রাউট তৈরি করতে হবে।
চলুন একটি উদাহরণসহ একটি রাউট তৈরি করে বুঝার চেষ্টা করি। শিখুন . নেট ওয়েবসাইটেরর হোম পেইজ ব্রাউজ করতে চাই। তাহলে অবশ্যই তার জন্য একটি রাউট তৈরি করা থাকতে হবে। তাহলেই হোম পেইজ্টি দেখা যাবে। তাইতো?
routes.php ফাইল ওপেন করে তার মধ্যে টাইপ করবেন-
Route::get('/', function() { return view('welcome'); });
এখানে Route হচ্ছে ক্লাস এবং get() হচ্ছে Route ক্লাসের একটি মেথড। এখানে get() মেথড দুইটি আর্গুমেন্ট গ্রহণ করে। প্রথম আর্গুমেন্ট '/' ইউআরএল এবং দ্বিতীয় আর্গুমেন্ট ক্লোজার অর্থাৎ ফাংশন গ্রহণ করে। প্রথম আর্গুমেন্ট '/' এর স্লাশ অর্থ হচ্ছে হোমপেজ এবং ভিউ হিসেবে welcome.blade.php ফাইলের কনটেন্ট দেখা যাবে। ফাইল এক্সটেনশন (.blade.php) লেখার প্রয়োজন নাই। কারন, লারাভেল সিন্ট্যাক্স গুলো সেই ভাবেই সেট করেছে।
শিখুন . নেট ওয়েবসাইটেরর courses পেইজ ব্রাউজ করতে চাই। তাহলে অবশ্যই courses নামে রাউট তৈরি করা থাকতে হবে। তাহলেই কোর্স পেইজ্টি দেখা যাবে।
routes.php ফাইল ওপেন করে তার মধ্যে টাইপ করবেন-
Route::get('/courses', function() { return view('courses'); });
প্রথম আর্গুমেন্ট '/courses' এর অর্থ হচ্ছে http://shikhun. net/courses এবং ভিউ হিসেবে courses.blade.php ফাইলের কনটেন্ট দেখা যাবে।
পরবর্তিতে middleware এবং group route সম্পর্কে লেকার চেষ্টা করবো। আজকে এই পর্যন্তই। সবাই ভালো থাকবেন।
Post a Comment