উত্তর:
আপনি যদি কেবল একটি ভ্যানিলা ফর্ম ব্যবহার করছেন (কোনও মডেলফর্ম নয়), আপনি একটি ক্ষেত্রের প্রাথমিক মান ( https://docs.djangoproject.com/en/2.2/ref/forms/fields/#django.forms.Field ) সেট করতে পারেন । প্রাথমিক ) মত
class MyForm(forms.Form):
my_field = forms.BooleanField(initial=True)
আপনি যদি কোনও মডেলফর্ম ব্যবহার করছেন, আপনি মডেল ক্ষেত্রে ( https://docs.djangoproject.com/en/2.2/ref/models/fields/#default ) একটি ডিফল্ট মান সেট করতে পারেন , যা ফলাফল মডেলফর্মের জন্য প্রযোজ্য যেমন
class MyModel(models.Model):
my_field = models.BooleanField(default=True)
অবশেষে, আপনি যদি রানটাইমে আপনার ক্ষেত্রটি ডিফল্টরূপে নির্বাচিত হবে কিনা তা আপনি গতিশীলরূপে চয়ন করতে চান, আপনি যখন আরম্ভ করবেন তখন আপনি প্রাথমিক পরামিতিটি ফর্মটিতে ব্যবহার করতে পারেন :
form = MyForm(initial={'my_field':True})
from django.db import models
class Foo(models.Model):
any_field = models.BooleanField(default=True)
initialডক্সে (আনবাউন্ড ফর্মের জন্য) উল্লেখ রয়েছে , তবে নেইdefault
আমি জাঙ্গো == 1.11 ব্যবহার করছি। সর্বাধিক ভোট পাওয়া উত্তর আসলে ভুল। জাঙ্গো থেকে দস্তাবেজটি পরীক্ষা করা হচ্ছে, এতে বলা হয়েছে:
প্রাথমিক - এই ক্ষেত্রের প্রাথমিক প্রদর্শনে ব্যবহার করার জন্য একটি মান to এই মান হয় না যদি ডেটা দেওয়া হয় একটি ফলব্যাক হিসাবে ব্যবহার।
এবং যদি আপনি ফর্ম বৈধকরণ প্রক্রিয়াটির কোডটি খনন করেন তবে আপনি দেখতে পাবেন যে প্রতিটি ক্ষেত্রের জন্য ফর্মটি তার উইজেটকে কল করবে value_from_datadict প্রকৃত মান পেতে তাই এই জায়গা যেখানে আমরা ডিফল্ট মান উদ্বুদ্ধ করতে পারেন।
এটি করার জন্য BooleanField, আমরা উত্তরাধিকার সূত্রে CheckboxInputডিফল্ট value_from_datadictএবং initফাংশনকে ওভাররাইড করতে পারি ।
class CheckboxInput(forms.CheckboxInput):
def __init__(self, default=False, *args, **kwargs):
super(CheckboxInput, self).__init__(*args, **kwargs)
self.default = default
def value_from_datadict(self, data, files, name):
if name not in data:
return self.default
return super(CheckboxInput, self).value_from_datadict(data, files, name)
তারপরে তৈরি করার সময় এই উইজেটটি ব্যবহার করুন BooleanField।
class ExampleForm(forms.Form):
bool_field = forms.BooleanField(widget=CheckboxInput(default=True), required=False)
Django 3.0। ধন্যবাদ।
form = MyForm(initial={'my_field':True}), আমি সরাসরি এটি ডকুমেন্টেশনে খুঁজে পাইনি।