আপনি ব্যবহার থামাতে কি myproduct.myproduct
? মোটামুটি এটি করার জন্য আপনার কী অর্জন করতে হবে:
django-admin.py startproject myproduct
cd myproduct
mkdir myproduct
touch myproduct/__init__.py
touch myproduct/models.py
touch myproduct/views.py
ইত্যাদি। আমি যদি বলি যে ফোন views.py
করতে হবে না তবে এটি কি সহায়তা করবে views.py
? অজগর পথে আপনি নাম উল্লেখ করতে পারেন তবে একটি ফাংশন (সাধারণত প্যাকেজ.প্যাকেজ.ভিউস.ফাংশন_নাম) এটি পরিচালনা করা হবে। যে হিসাবে সহজ। এই সমস্ত "প্রকল্প" / "অ্যাপ" স্টাফটি কেবল অজগর প্যাকেজ।
এখন, আপনি এটি করার কথা? বা বরং, আমি এটি কিভাবে করতে পারি? ওয়েল, যদি আপনি পুনর্ব্যবহারযোগ্য কার্যকারিতা একটি উল্লেখযোগ্য টুকরা তৈরি করেন, মত একটি মার্কআপ সম্পাদক বলছি, যে যখন আপনি একটি "শীর্ষ স্তরের অ্যাপ্লিকেশন" তৈরি থাকতে পারে যা widgets.py
, fields.py
, context_processors.py
ইত্যাদি - সব জিনিষ আপনি আমদানি করতে চাইতে পারেন।
একইভাবে, আপনি যদি ইনস্টলগুলির জুড়ে বেশ জেনেরিক কোনও ফর্ম্যাটে কোনও ব্লগের মতো কিছু তৈরি করতে পারেন তবে আপনি এটিকে একটি অ্যাপ্লিকেশন, তার নিজস্ব টেম্পলেট, স্ট্যাটিক সামগ্রী ফোল্ডার ইত্যাদি দিয়ে গুটিয়ে রাখতে পারেন এবং এটি ব্যবহারের জন্য জাঙ্গো প্রকল্পের একটি উদাহরণ কনফিগার করতে পারেন that অ্যাপ্লিকেশন এর বিষয়বস্তু।
আপনার অবশ্যই এটি করা উচিত বলে কোন কঠোর এবং দ্রুত নিয়ম নেই, তবে এটি কাঠামোর অন্যতম লক্ষ্য। সমস্ত কিছু, টেমপ্লেট অন্তর্ভুক্ত, আপনাকে কিছু সাধারণ বেস থেকে অন্তর্ভুক্ত করার অনুমতি দেয় এর অর্থ আপনার ব্লগটি কেবল তার নিজের অংশটি দেখাশোনা করে অন্য কোনও সেটআপের সাথে স্নিগ্ধভাবে ফিট করা উচিত।
তবে আপনার প্রকৃত উদ্বেগের সমাধান করতে হ্যাঁ, কিছুই বলে না যে আপনি শীর্ষ স্তরের প্রকল্প ফোল্ডারটির সাথে কাজ করতে পারবেন না। এটিই অ্যাপ্লিকেশনগুলি করে এবং আপনি যদি সত্যিই চান তবে এটি করতে পারেন। আমি অবশ্য বেশ কয়েকটি কারণে ঝোঁক দেখি না:
- জ্যাঙ্গোর ডিফল্ট সেটআপ এটি করে না।
- প্রায়শই, আমি একটি প্রধান অ্যাপ্লিকেশন তৈরি করতে চাই, তাই আমি সাধারণত একটির মতো একটি তৈরি করি
website
। তবে পরবর্তী কোনও তারিখে আমি কেবল এই সাইটের জন্য মূল কার্যকারিতা বিকাশ করতে চাই। এটিকে অপসারণযোগ্য করার উদ্দেশ্যে (আমি কখনই করি বা করি না) তারপরে আমি আলাদা ডিরেক্টরি তৈরি করার প্রবণতা রাখি। এর অর্থ হ'ল আমি কোনও গ্লোবাল urls.py ফোল্ডার থেকে ডান url গুলিকে মুছে ফেলার পরিবর্তে কনফিগার থেকে সেই প্যাকেজটিকে লিঙ্কযুক্ত করে ফোল্ডারটি মুছে ফেলার মাধ্যমে বলি কার্যকারিতাটি ফেলে দিতে পারি।
- খুব প্রায়শই, আমি যখন কিছু স্বাধীন করতে চাই তখনও এটিকে কোথাও বাঁচার দরকার হয় যখন আমি এটি দেখা / স্বতন্ত্র করে তুলি। মূলত উপরের কেস, তবে স্টাফের জন্য আমি জেনেরিক বানাতে চাইছি না।
- আমার শীর্ষ স্তরের ফোল্ডারে প্রায়শই ডাব্লুএসজি স্ক্রিপ্টস, এসকিউএল স্ক্রিপ্টস ইত্যাদির মধ্যে সীমাবদ্ধ নয় তবে কয়েকটি অন্যান্য জিনিস থাকে
- জ্যাঙ্গোর পরিচালনা এক্সটেনশনগুলি সাব-ডিরেক্টরিতে নির্ভর করে। সুতরাং প্যাকেজগুলির যথাযথ নামকরণ করা বোধগম্য।
সংক্ষেপে, একটি কনভেনশন হওয়ার কারণ অন্য কনভেনশনগুলির সমান - এটি যখন আপনার প্রকল্পের সাথে কাজ করা অন্যদের কথা আসে তখন তা সহায়তা করে। যদি আমি দেখি fields.py
আমি অবিলম্বে এতে সাবক্লাস জাঙ্গোর ক্ষেত্রের মধ্যে কোডের প্রত্যাশা করছি, অন্যদিকে যদি আমি দেখি তবে inputtypes.py
এটির দিকে না তাকিয়ে এর অর্থ কী তা সম্পর্কে আমি এতটা পরিষ্কার হতে পারি না।