ডেভসংকেত

জ্যাঙ্গো

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

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

    শেয়ার করুন

    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

    স্ট্যাটিক ফাইল

    • 'স্ট্যাটিক রুট' ফোল্ডারে সকল স্ট্যাটিক ফাইল সংগ্রহ করা

      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)

    (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>

    টেমপ্লেট ট্যাগ

    • টেমপ্লেট এক্সটেন্ড করা

      {%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')

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

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

    স্পন্সর