ডেভসংকেত

জ্যাঙ্গো

জ্যাঙ্গো এর চিটশিট

কন্ট্রিবিউটর

  • romjanxr
  • mahiuddin-dev
  • HridoyHazard
  • Taraldinn
  • iamfoysal
  • iamraufu
  • ruhulaminparvez
  • Rafat97
  • istiak101
  • shahed-swe
  • alrafiabdullah
  • lgope
  • Geektrovert
  • Mehedi61

শেয়ার করুন

pipenv ইনিশিয়ালাইজেশন

  • প্রোজেক্ট ডিরেক্টরী তৈরী করা

    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 ভার্সন দেখা

    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 %}

Django Views

  • ডাটাবেজ থেকে একটা অবজেক্টের সব ডাটা দেখাতে

    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)

(venv) ভার্চুয়াল এনভায়রনমেন্ট ইনিশিয়ালাইজেশন

  • প্রোজেক্ট ডিরেক্টরী তৈরী করা

    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)

ডেভসংকেত সম্পর্কে

ডেভসংকেত এর লক্ষ্য হচ্ছে বাংলাতে একটা বড় চিটশিটের ভান্ডার গড়ে তোলা। এটা সম্পূর্ণ স্বাধীন এবং ওপেন সোর্স গিটহাব অর্গানাইজেশন।

স্পন্সর