এই জ্যাঙ্গো অ্যাপ টিউটোরিয়ালে পছন্দ_সেট কী?


144

জাজানো টিউটোরিয়ালে এই লাইনটি রয়েছে, আপনার প্রথম জ্যাঙ্গো অ্যাপ্লিকেশনটি লিখেছেন, অংশ 1 :

p.choice_set.create(choice='Not much', votes=0)

কীভাবে choice_setঅস্তিত্বে ডাকা হয় এবং এটি কী?

আমি অনুমান করি যে choiceঅংশটি Choiceটিউটোরিয়ালে ব্যবহৃত মডেলের ছোট হাতের সংস্করণ , তবে কী choice_set? তুমি কি বিস্তারিত বলতে পারো?

আপডেট: বেনের উত্তরের ভিত্তিতে , আমি এই ডকুমেন্টেশনটি সন্ধান করেছি: "পশ্চাদপদ" সম্পর্কগুলি অনুসরণ করে


আমার এই ডকুমেন্টেশনের সাথে স্রেফ লিঙ্ক করা উচিত ছিল, এটি আমার উত্তরের চেয়ে পরিষ্কার।
বেন জেমস

@ জেন জেমস: না, আমি এটি অন্যভাবে তৈরি করার জন্য প্রশংসা করি, বিশেষত ওআরএম কী করছে তার বিবরণ। জ্যাঙ্গো ডকুমেন্টেশনগুলি মাঝে মাঝে ক্ষয় হতে পারে।
পিটার মর্টেনসেন

40
এটি জিজ্ঞাসা করার জন্য আপনাকে ধন্যবাদ, আমি টিউটোরিয়ালে এটি ব্যাখ্যা না করায় আমি এতে বিভ্রান্ত হয়ে পড়েছিলাম।
ক্লাদিও

4
বাহ, এটি একটি নবাগতের জন্য কোডের একটি বোঝা লাইন। আমার জন্য বাধাটি বুঝতে পেরেছিল যে আমরা প্রশ্নের সাথে সম্পর্কিত একটি চয়েজ অবজেক্ট পাচ্ছি, তারপরে এটির পছন্দ বাড়ানোর জন্য one একের পর এক ভোট। সম্পর্কিত ম্যানেজার ধারণাটি এই বিন্দুতে টিউটোরিয়ালে উল্লেখ করা হয়নি তাই এটি সত্যিকারের হোঁচট খাতে পারে।
হিমশীতল

@ পিটারমোরটেনসেন আপনি কি ডকুমেন্টেশনটি যেখানে বর্ণিত হয়েছে তা আপডেট করতে পারবেন? আপনাকে ধন্যবাদ
এমএইচ

উত্তর:


178

আপনি একটি বিদেশী কী তৈরি করেছেন Choiceযার উপর প্রতিটির সাথে একটি সম্পর্কিত Question

সুতরাং, প্রত্যেকের Choiceস্পষ্টতই একটি questionক্ষেত্র থাকে, যা আপনি মডেলটিতে ঘোষণা করেছিলেন।

জ্যাঙ্গোর ওআরএম সম্পর্কটিকে পিছন থেকে পিছনে অনুসরণ করে Question, স্বয়ংক্রিয়ভাবে প্রতিটি উদাহরণে একটি ক্ষেত্র তৈরি করে foo_setযেখানে বলা Fooহয় সেই মডেলের ForeignKeyক্ষেত্রের সাথে মডেল কোথায় ।

choice_setউদাহরণস্বরূপ সম্পর্কিত বস্তুর RelatedManagerক্যোয়ারসেট তৈরি করতে পারে এমন একটিChoiceQuestionq.choice_set.all()

আপনি পছন্দ করেন না এমন foo_setনামকরণ যা জ্যাঙ্গো স্বয়ংক্রিয়ভাবে বেছে, অথবা যদি আপনি একই মডেল এবং সেগুলির পার্থক্য নির্ণয় করার প্রয়োজনীয়তা থেকে একটির বেশি বিদেশী কী আছে, তবে আপনি ব্যবহার করে নিজস্ব অগ্রাহ্য নাম নির্বাচন করতে পারবেন related_nameআর্গুমেন্ট প্রাপ্ত করতে ForeignKey


ধন্যবাদ। আমি এখন আরও অনেক কিছু জানি। পছন্দ_সেটটি কি "ম্যানেজার" নয়? (এটি ক্লাসের ক্যুরিসেটের উদাহরণ ফেরত দিতে পারে)। নাকি একই জিনিস?
পিটার মর্টেনসেন

2
আপনি সঠিক, এটি এমন একটি RelatedManagerযা ক্যোয়ারসেট তৈরি করতে পারে।
বেন জেমস
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.