প্রোজেক্ট ডিরেক্টরী তৈরী করা
mkdir <directory_name>
প্রোজেক্ট ডিরেক্টরীতে নেভিগেইট করা
cd <directory_name>
প্রোজেক্ট ডিরেক্টরীতে ভার্চুয়াল ইনভাইরোনমেন্ট ক্রিয়েট করা
mkdir <.venv>
pipenv ইনিশিয়ালাইজ করা
pipenv install
pipenv শেল চালু করা
pipenv shell
django ইন্সটল করা
pipenv install django
django ভার্সন দেখা
python -m django --version
যেকোনো প্যাকেজ ডিপেন্ডেন্সী ইন্সটল করা
pipenv install <package_name>
pip ভার্সন দেখা
pip --version
pip আপগ্রেড করা
python -m pip install --upgrade pip
django ইন্সটল করা
pip install django
নির্দিষ্ট django ভার্সন ইন্সটল করা
pip install Django==<needed_version>
যেকোনো প্যাকেজ ডিপেন্ডেন্সী ইন্সটল করা
pip install <package_name>
রিকোয়ারমেন্ট ফাইল থেকে প্যাকেজ ডিপেন্ডেসি ইন্সটল করা
pip install -r requirements.txt
যেকোনো প্যাকেজ ডিপেন্ডেন্সী আনইন্সটল করা
pip uninstall <package_name>
প্যাকেজ ডিপেন্ডেন্সী লিস্ট করা
pip list
প্যাকেজ ডিপেন্ডেন্সী সেভ করা
pip freeze > requirements.txt
অ্যাপ তৈরী করা
django-admin startapp <app_name>
প্রোজেক্ট এর settings.py ফাইলে অ্যাাপ ইনস্টল করার জন্য
INSTALLED_APPS = ['app_name',]
সব অ্যাপ মাইগ্রেশনের জন্য
python manage.py makemigrations
নির্দিষ্ট করে অ্যাপ মাইগ্রেশনের জন্য
python manage.py makemigrations <app_name>
মাইগ্রেশন ডাটাবেজে এপ্লাইয়ের জন্য
python manage.py migrate
ইমেইল কনসোল এ প্রিন্ট করা
EMAIL_BACKEND = 'django.core.mail.backends.console.EmailBackend'
SMTP সার্ভার ব্যবহার করে মেইল পাঠানো
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
টেমপ্লেট এক্সটেন্ড করা
{%extends '<html file name>'%}
টেমপ্লেট ট্যাগ এক্সটেন্ড করার জন্য (কোড রিডিউস করার জন্য )
{% block content %} ... {% endblock %} or {% block content %} ... {% endblock content %}
টেমপ্লেট অন্তর্ভুক্ত করা
{%include '<html file name>'%}
টেমপ্লেট এর ভেতরে স্ট্যাটিক ফাইল লোড করা
{%load static%}
টেমপ্লেট এর ভেতরে ব্লক তৈরি করা
{%block <block name>%} ... {%endblock <block name>%}
টেমপ্লেট এর ভেতরে কন্ডিশন তৈরি করা
{%if <condition>%} .. {%elif <condition>%} .. {%else%}...{%endif%}
টেমপ্লেট এর ভেতরে লুপ তৈরি
{%for i in <context data name>%} ... {%endfor%}
ট্যাগ তৈরী করা
{% load <tag_or_filter_lib> %}
ফিল্টার ব্যাবহার করা
{% filter <filter>[|<filter>...] %}
স্ট্যাটিক ফাইল লোড করা
{% load static "custom.css" %}
টেম্পলেট এ ভেরিয়েবল ব্যাবহার করা
{{ variable_name }}
url লিঙ্ক করা
{% url "some-other-page" %}
url এর ভিতরে ভেরিয়েবল পাস করা
{% url ""blog-view"" blog.id %}
উক্ত '|' সিম্বল এর মাধ্যমে ফিল্টার ব্যাবহার করা
{{ variable_name | filter_name }}
উক্ত '|' সিম্বল এর মাধ্যমে ফিল্টার আর্গুমেন্ট পাস করা
{{ variable_name | filter_name:"argument"}}
উক্ত '|' সিম্বল এর মাধ্যমে ডিকশনারি শর্ট করা
{{ dictionary_name | dictsort:"key_name"}}
উক্ত '|' সিম্বল এর মাধ্যমে ডাটাটাইপ ফিল্টার করা
{{ date_time | time"H": "i" }}
কমেন্ট ব্যাবহার করা
{% comment %} .... {% endcomment %}
লুপে ইনডেক্স নাম্বার চেক করা
{{ forloop.counter }} #starting index 1 Or {{ forloop.counter0 }} # starting index 0
লুপে রিভার্স ইনডেক্স নাম্বার চেক করা
{{ forloop.revcounter }} # end index 1 Or {{ forloop.revcounter0 }} # end index 0
টেমপ্লেট এর কিছু পরিবর্তন হলো কিনা চেক করা
{% ifchanged %} …. {% endifchanged %}
Random টেক্স জেনারেট করা
{% lorem %}
বর্তমান সময়
{% now "SHORT_DATETIME_FORMAT" %}
এইচটিএমএল ট্যাগের হোয়াইটস্পেস মুছা
{% spaceless %} ….. {% endspaceless %}
ডাটাবেজ থেকে একটা অবজেক্টের সব ডাটা দেখাতে
ModelName.objects.all()
ডাটাবেজ থেকে একটা অবজেক্টের একটা ডাটা দেখাতে
ModelName.objects.get(id=1)
ডাটাবেজ থেকে ফিল্টার করে অবজেক্ট দেখাতে
ModelName.objects.filter(field_name=field_value)
ডাটাবেজ থেকে ডাটা নিয়ে Order করার জন্য
ModelName.objects.all().order_by('field_name')
Objects তৈরি করা
ModelName.objects.create(field_name=field_value)
স্ট্রিং এর শুরু চেক করতে (__startswith)
ModelName.objects.filter(fieldname__startswith=”a”)
স্ট্রিং এর শেষ চেক করতে (__endswith)
ModelName.objects.filter(fieldname__endswith=”v”)
For case sensitive search
ModelName.objects.filter(fieldname__iexact=lorem)
প্রোজেক্ট ডিরেক্টরী তৈরী করা
mkdir <directory_name>
প্রোজেক্ট ডিরেক্টরীতে নেভিগেইট করা
cd <directory_name>
গ্লোবালি virtualenv install করা (Windows)
py -m pip install --user virtualenv
গ্লোবালি virtualenv install করা (Linux)
pip install virtualenv
venv ইনিশিয়ালাইজ করা (Windows)
py -m venv env
venv ইনিশিয়ালাইজ করা (Linux)
virtualenv <directory_name>
virtualenv Activeate করা (Windows)
./env/Scripts/activate
virtualenv Activeate করা (Linux)
source env/bin/activate
virtualenv deactivate করা
deactivate
প্রোজেক্ট তৈরী করা
django-admin startproject <project_name>
ব্যবহারের তথ্য এবং প্রতিটি অ্যাপ্লিকেশন দ্বারা প্রদত্ত কমান্ডের একটি তালিকা প্রদর্শন করে
python manage.py help
ডেভেলপমেন্ট সার্ভার চালু করা
python manage.py runserver
নির্দিষ্ট Port এ ডেভেলপমেন্ট সার্ভার চালু করা
python manage.py runserver <port_number>
জ্যাঙ্গো প্রোজেক্ট পরীক্ষা করে
python manage.py check
জ্যাঙ্গো প্রোজেক্ট ইন্টারেক্টিভ ইন্টারপ্রেটার
python manage.py shell
জ্যাঙ্গো প্রোজেক্ট মেয়াদোত্তীর্ণ সেশনগুলি পরিষ্কার করে
python manage.py clearsessions
সুপার ইউজার তৈরী করা
python manage.py createsuperuser
পাসওয়ার্ড পরিবর্তন করা
python manage.py changepassword <username>
'স্ট্যাটিক রুট' ফোল্ডারে সকল স্ট্যাটিক ফাইল সংগ্রহ করা
python manage.py collectstatic
ইউজার ইনপুট ছাড়াই 'স্ট্যাটিক রুট' ফোল্ডারে সকল স্ট্যাটিক ফাইল সংগ্রহ করা
python manage.py collectstatic --no-input
স্ট্যাটিক ফাইল খুঁজে বের করা
python manage.py findstatic staticfile [staticfile ...]
models.py এর মডেল ক্লাস ইম্পোর্ট করা
from django.db import models
model ক্লাস তৈরি করা
class Person(models.Model):
Character Field জন্য
field_name = models.CharField(max_length=255)
ডাটাবেজ এ Null and Blank এম্পটি ভেলুয় হিসেবে স্টোর করার জন্য
field_name = models.CharField(max_length=10, null=True, blank=True)
অটোমেটিক যেকোন সাইজ এর ইন্টিজার ফিল্ড ডিক্লেয়ার করার জন্য
field_name = models.AutoField()
-2147483648 থেকে 2147483647 এর মধ্যে যেকোন সাইজ এর ইন্টিজার স্টোর করার জন্য
field_name = models.IntegerField()
AutoField এর মত শুধু মাত্র ৬৪ বিট এর যেকোন ইন্টিজার ইনপুট নেওয়ার জন্য
field_name = models.BigAutoField()
বাইট,বাইট এরে অথবা মেমরি ভিউ এসাইন করার জন্য
field_name = models.BinaryField()
বুলিয়ান ভ্যালু এসাইন করার জন্য
field_name = models.BooleanField()
Model ForeignKey করার জন্য
field_name = models.ForeignKey(ModelName, on_delete=models.CASCADE)
PositiveIntegerField জন্য
field_name = models.PositiveIntegerField()
TextField দীর্ঘ লেখা ইনপুট নেওয়ার জন্য
field_name = models.TextField()
DateField তারিখ, মাস, বছর ইনপুট নেওয়ার জন্য
field_name = models.DateField()
তারিখ, মাস, বছর এবং সময় ইনপুট নেওয়ার জন্য DateTimeField
field_name = models.DateTimeField()
অটোমেটিক তারিখ, মাস, বছর এবং সময় ইনপুট নেওয়ার জন্য
field_name = models.DateTimeField(auto_now_add=True)
Email ইনপুট নেওয়ার জন্য
field_name = models.EmailField()
ManyToManyField ব্যবহার করার জন্য
field_name = models.ForeignKey(User, on_delete=models.CASCADE)
Image ইনপুট নেওয়ার জন্য
field_name = models.ImageField(upload_to='images/')
File ইনপুট নেওয়ার জন্য
field_name = models.FileField(upload_to='files/')
URL ইনপুট নেওয়ার জন্য
field_name = models.URLField()
TimeField ইনপুট নেওয়ার জন্য
field_name = models.TimeField()
Decimal number ইনপুট নেওয়ার জন্য
field_name = models.DecimalField(max_digits=10, decimal_places=2)
URL Slug এর জন্য
field_name = models.SlugField(unique=True)