আপডেট :
গ্যারেথ রিস ঠিক ছিল যে 1 এবং 3 পয়েন্ট এ ক্ষেত্রে বৈধ ছিল না। যদিও আমি মনে করি 2 এবং 4 পয়েন্টটি এখনও বৈধ, সুতরাং আমি এইগুলি এখানে রেখে দেব।
(আমি লক্ষ্য করেছি যে request.POST
পিরামিড (পাইলন) এবং জ্যাঙ্গো উভয়েরই কোনও একরকম রূপ MultiDict
। তাই সম্ভবত এটি request.POST
অপরিবর্তনীয় তৈরির চেয়ে আরও সাধারণ অভ্যাস ))
আমি জ্যাঙ্গো ছেলেদের পক্ষে কথা বলতে পারি না, যদিও আমার কাছে মনে হয় যে এটি এর কয়েকটি কারণে হতে পারে:
পারফরমেন্স । অপরিবর্তনীয় বস্তুগুলি পরিবর্তনযোগ্যগুলির চেয়ে "দ্রুত" যাতে তারা যথেষ্ট পরিমাণে অনুকূলিতকরণের অনুমতি দেয়। একটি অবজেক্টের অপরিবর্তনীয় মানে হল যে আমরা এটি তৈরির সময়ে স্থান বরাদ্দ করতে পারি , এবং স্থানের প্রয়োজনীয়তা পরিবর্তন হচ্ছে না। এটিতে অনুলিপি দক্ষতা এবং তুলনা দক্ষতার মতো জিনিস রয়েছে।
সম্পাদনা করুন :QueryDict
গ্যারেথ রিস যেমন উল্লেখ করেছেনতেমন এটি নয়।
- এর ক্ষেত্রে
request.POST
, মনে হচ্ছে সার্ভারের কোনও ক্রিয়াকলাপের অনুরোধের ডেটা পরিবর্তন করার দরকার নেই । এবং তাই অপরিবর্তনীয় বস্তুগুলি আরও উপযুক্ত, তাদের উল্লেখযোগ্য পারফরমেন্স সুবিধা রয়েছে তা উল্লেখ না করে।
অপরিবর্তনীয় বস্তুগুলি dict
কী হিসাবে ব্যবহার করা যেতে পারে , যা আমি মনে করি
জাজানোতে কোথাও খুব কার্যকর হতে পারে .. সম্পাদনা : আমার ভুল, অপরিবর্তনীয় সরাসরি হ্যাশেবলকে বোঝায় না ; হ্যাশযোগ্য বস্তুগুলি তবে সাধারণত অপরিবর্তনীয় ।
- যখন আপনি কাছাকাছি চলে যান
request.POST
(বিশেষত তৃতীয় পক্ষের প্লাগইনগুলিতে এবং বাইরে), আপনি আশা করতে পারেন যে ব্যবহারকারীর কাছ থেকে এই অনুরোধটি অপরিবর্তিত থাকবে।
কোনওভাবে এই কারণগুলি কি "পরিবর্তনীয় বনাম পরিবর্তনীয়?" এর জেনেরিক উত্তর? প্রশ্ন। আমি নিশ্চিত যে জ্যাঙ্গো ক্ষেত্রে উপরের তুলনায় অনেক বেশি নকশা বিবেচনা রয়েছে।
request.POST
প্রকৃতপক্ষে আরও বেশি ডেটা দিয়ে জমা দেওয়া হয়েছে।