যে লারাভেল ট্রিকসগুলো আপনার জানা উচিত

01 October 2023

2 min read

  • API Resources: With or Without “data”?

আপনি যদি ডেটা রিটার্ন করতে Eloquent API রিসোর্স ব্যবহার করেন, তাহলে সেগুলো স্বয়ংক্রিয়ভাবে 'data' (data.data) এ মোড়ানো হবে । আপনি নীচের প্রক্রিয়াটির মাধ্যমে সেই

অতিরিক্ত ইনার ডেটা রেপ থেকে পরিত্রাণ পেতে পারেন।

Text

Description automatically generated


  • আপনি আপনার ইনার ডেটা এলিমেন্টগুলো কী হওয়া উচিত তাও কাস্টমাইজ করতে পারেন, data.data এর পরিবর্তে data.polls দিয়ে ডেটা রিটার্ন করুন।

উদাহরণ

customize-resource


  • Avoid N+1 queries in API resources

whenLoaded মেথড শর্তসাপেক্ষে একটি রিলেশনশিপ লোড করতে ব্যবহার করা যেতে পারে। অপ্রয়োজনীয় রিলেশনশিপ লোড না করার জন্য, এই মেথডটি রিলেশনশিপের পরিবর্তে রিলেশনশিপের নাম গ্রহণ করে। whenLoaded() ছাড়া পোস্টগুলির জন্য সর্বদা একটি কুয়েরি থাকে।

avoid-(n+1)-query


  • অথরাইজেশন হেডার থেকে একটি বিয়ারার টোকেন (Bearer Token) পাবেন।
Text

Description automatically generated
  • Exact Laravel version

প্রথমে আপনার ওয়েব অ্যাপে cd করুন এবং লারাভেল ভার্সন পেতে নীচের কমান্ডটি রান করুন।

php artisan --version

  • How to create a custom command

php artisan make:command SendMailToAllUser

উপরের কমান্ডটি আপনার " /app/Console/Commands" এ একটি কাস্টম কমান্ড তৈরি করবে

  • Hide your custom command
hide-custom-command


কোডটি আর্টিসান লিস্ট (Artisan List) থেকে কাস্টম কমান্ডটি লুকিয়ে রাখবে।

  • Eloquent where date methods

“ whereDate / whereMonth / whereDay / whereYear / whereTime ”

  • whereDate: whereDate মেথডটি একটি কলামের ভ্যালু একটি তারিখের সাথে তুলনা করতে ব্যবহার করা যেতে পারে:
  • whereMonth: whereMonth মেথডটি একটি কলামের ভ্যালু একটি নির্দিষ্ট মাসের সাথে তুলনা করতে ব্যবহার করা যেতে পারে:
  • whereDay: whereDay মেথডটি একটি কলামের ভ্যালু মাসের একটি নির্দিষ্ট দিনের সাথে তুলনা করতে ব্যবহার করা যেতে পারে:
  • whereYear: whereYear মেথডটি একটি কলামের ভ্যালু একটি নির্দিষ্ট বছরের সাথে তুলনা করতে ব্যবহার করা যেতে পারে:
  • whereTime: whereTime মেথডটি একটি কলামের ভ্যালু একটি নির্দিষ্ট সময়ের সাথে তুলনা করতে ব্যবহার করা যেতে পারে:
  • Increment & Decrement

কুয়েরি বিল্ডার একটি প্রদত্ত কলামের ভ্যালু বৃদ্ধি বা হ্রাস করার জন্য কনভেনিয়েন্ট মেথডস সরবরাহ করে। এই উভয় মেথডই অন্তত একটি আর্গুমেন্ট গ্রহণ করে: পরিবর্তন করার জন্য কলাম। কলামটি যে পরিমাণ বৃদ্ধি বা হ্রাস করা উচিত তা নির্দিষ্ট করার জন্য একটি দ্বিতীয় আর্গুমেন্ট প্রদান করা যেতে পারে।

  • No timestamp columns

যদি আপনার ডিবি টেবিলে (DB table) created_at এবং updated_at টাইমস্ট্যাম্প ফিল্ড না থাকে, তাহলে আপনি $timestamps=false প্রোপার্টি ব্যবহার করে উল্লেখ করতে পারেন যাতে ইলোকুয়েন্ট মডেলটি (Eloquent model) সেগুলো ব্যবহার না করে।

no-timestamp-columns
  • Default Timestamp

মাইগ্রেশন তৈরি করার সময়, আপনি ->timestamp() কলাম টাইপটি ব্যবহার করতে পারেন ->useCurrent() অপশনের সাথে, এটি ডিফল্ট ভ্যালু হিসাবে CURRENT_TIMESTAMP কে সেট করবে ।

default-timestamp


  • Column name change

Eloquent Query Builder-তে, আপনি একটি সাধারণ SQL কোয়েরির মতো যেকোনো কলামকে ভিন্ন নামের সাথে রিটার্ন করতে "as" দিয়ে উল্লেখ করতে পারেন।

column-name-change
  • More convenient DD
use-dd


  • Never run “composer update” in production

কখনই প্রোডাকশনে কম্পোজার আপডেট রান করবেন না, এটি স্লো এবং রিপোসিটোরিকে "ব্রেক" করবে। সর্বদা আপনার কম্পিউটারে লোকালি কম্পোজার আপডেট চালান, এবং রিপোসিটোরিতে একটি নতুন composer.lock কমিট করুন এবং সার্ভারে কম্পোজার ইনস্টল রান করুন৷

  • Change Default Timestamp Fields

আপনি যদি একটি নন-লারাভেল ডাটাবেসের সাথে কাজ করেন এবং আপনার টাইমস্ট্যাম্প কলামগগুলো আলাদাভাবে নামকরণ করা হয় তাহলে কী হবে? হতে পারে, আপনার create_date এবং update_date আছে। সৌভাগ্যবশত, আপনি মডেলে তাদের নির্দিষ্ট করতে পারেন।

change_default_timestamp_fields


  • Order by created_at
order-by


ডিফল্টভাবে, latest() মেথডটি create_at দ্বারা অর্ডার করবে। একটি বিপরীত মেথড আছে oldest() নামে যা create_at দিয়ে এসেন্ডিং অর্ডারে অর্ডার করবে।

Share this article

RELATED ARTICLES

ওয়েব vs অ্যাপ (ফ্লাটারের যেখানে একচ্ছত্র আধিপত্য)

08 May 2024

ক্র্যাক করুন কোডিং ইন্টারভিউ

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

21 April 2024

1 min read

চ্যাটজিপিটি ইউজেস ফর লারাভেল ডেভেলপারস

বর্তমান সময়ে এক্সপার্ট হতে হলে সবাইকেই AI ইউজ করা জানতে হয়। আর সেটা যদি হয় লারাভেল ডেভেলপার্সদের জন্য, তাহলে বলা যায়, chatgpt আপনার কাজকে করতে পারে আরো ইজি এন্ড টাইম-ফ্রেন্ডলি। কিন্তু তা কিভাবে?এই নিয়ে ডিটেইলস জেনে নিতে পড়ে নিন আজকের ব্লগটি। ChatGPT চ্যাটজিপিটি হল OpenAI-এর ক্রিয়েট করা একটি Large Language Model, যা বিভিন্ন কাজের জন্য ইউজ করা যেতে পারে। আর এই বিভিন্ন কাজের মধ্যে রয়েছে কোড ক্রিয়েট এবং ডিবাগ করা।  Laravel লারাভেল হলো PHP-ভিত্তিক একটি জনপ্রিয় ওপেন-সোর্স ওয়েব অ্যাপ্লিকেশন ফ্রেম

12 March 2024

1 min read

Envato মার্কেটপ্লেসে শাইন করতে কী শিখবেন?

Envato Marketplace কে এক কথায় ক্রিয়েটিভ ডিজিটাল asset এর শপিংমল বলা যেতে পারে। বিশ্বব্যাপী ক্রিয়েটিভ প্রফেশনালরা, যেমন - ওয়েব ডিজাইনার, গ্রাফিক্স ডিজাইনার, ফটোগ্রাফার ইত্যাদি মানুষদের কাছে এই অনলাইন মার্কেটপ্লেসটি খুবই জনপ্রিয়। তাঁরা যেমন তাদের কন্টেন্ট বিক্রি করার জন্য এই মার্কেটপ্লেসে আসেন, ঠিক তেমনি অসংখ্য ক্রেতাও সেগুলি কিনতে আসেন। তাই এই মার্কেটপ্লেসটি ক্রিয়েটিভ পেশার মানুষদের জন্য আয়ের বেশ সম্ভাবনাময় একটি ক্ষেত্র।  আপনি হয়তো ইতোমধ্যেই Envato Marketplace এ জয়েন করে ফেলেছেন কিংবা করতে যাচ্ছ

12 February 2024

অনলাইন লাইভ স্কিল ডেভেলপমেন্ট প্ল্যাটফর্ম।

ডাউনলোড করুন ওস্তাদ অ্যাপ

কমিউনিটি -এর সাথে কানেক্টেড থাকতে