{"id":938,"date":"2020-11-13T05:32:46","date_gmt":"2020-11-13T05:32:46","guid":{"rendered":"https:\/\/codeinsightacademy.com\/blog\/?p=938"},"modified":"2021-04-25T08:12:40","modified_gmt":"2021-04-25T08:12:40","slug":"django-cheat-sheet","status":"publish","type":"post","link":"https:\/\/codeinsightacademy.com\/blog\/python\/django-cheat-sheet\/","title":{"rendered":"Django Cheat Sheet"},"content":{"rendered":"\n<p>Install Django<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python -m pip install Django==3.1.3<\/code><\/pre>\n\n\n\n<p>Verify Django Installation<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python -m django --version<\/code><\/pre>\n\n\n\n<p>List all installed python modules \/ packages<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python -m pip list<\/code><\/pre>\n\n\n\n<p>Create new django project<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>django-admin startproject projectname<\/code><\/pre>\n\n\n\n<p>Run Django Project<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python manage.py runserver<\/code><\/pre>\n\n\n\n<p>Create New App<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python manage.py startapp newappname<\/code><\/pre>\n\n\n\n<p>manage.py help<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python manage.py help\n<\/code><\/pre>\n\n\n\n<p>MySql Database connection<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>DATABASES = {\n    'default': {\n        'ENGINE': 'django.db.backends.mysql', \n        'NAME': 'DB_NAME',\n        'USER': 'DB_USER',\n        'PASSWORD': 'DB_PASSWORD',\n        'HOST': 'localhost',   # Or an IP Address that your DB is hosted on\n        'PORT': '3306',\n    }\n}<\/code><\/pre>\n\n\n\n<p>open db shell with default connection<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python manage.py dbshell\n<\/code><\/pre>\n\n\n\n<p>MySql Database Connection Troubleshoot in Windows OS<br>Download whl package which is compatible with your python version<br><a href=\"https:\/\/www.lfd.uci.edu\/~gohlke\/pythonlibs\/\">https:\/\/www.lfd.uci.edu\/~gohlke\/pythonlibs\/<\/a><br>Find: mysqlclient<br><br>To check whether python is 32 or 64 bit just run following command <\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" src=\"https:\/\/codeinsightacademy.com\/blog\/http:\/\/codeinsightacademy.com\/blog\/wp-content\/uploads\/2020\/11\/image-1.png\" alt=\"\" class=\"wp-image-957\" width=\"890\" height=\"95\" srcset=\"https:\/\/codeinsightacademy.com\/blog\/http:\/\/codeinsightacademy.com\/blog\/wp-content\/uploads\/2020\/11\/image-1.png 890w, https:\/\/codeinsightacademy.com\/blog\/http:\/\/codeinsightacademy.com\/blog\/wp-content\/uploads\/2020\/11\/image-1-300x32.png 300w, https:\/\/codeinsightacademy.com\/blog\/http:\/\/codeinsightacademy.com\/blog\/wp-content\/uploads\/2020\/11\/image-1-768x82.png 768w\" sizes=\"(max-width: 890px) 100vw, 890px\" \/><\/figure>\n\n\n\n<pre class=\"wp-block-code\"><code>python -m pip install mysqlclient-1.4.6-cp37-cp37m-win32.whl<\/code><\/pre>\n\n\n\n<p>open django project shell in terminal<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python manage.py shell\n<\/code><\/pre>\n\n\n\n<p>open db shell with specific connection<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python manage.py dbshell --database \"connection_name\"\n<\/code><\/pre>\n\n\n\n<p>Create  model of legacy(existing) database table using inspectdb<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python manage.py inspectdb --database='connection_name' table_name<\/code><\/pre>\n\n\n\n<p>Import Models in shell<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>from app.models import ModelName<\/code><\/pre>\n\n\n\n<p>Select data from table using Django ORM<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>queryset = ModelName.objects.all()\nprint(queryset.query)\nprint(list(queryset))<\/code><\/pre>\n\n\n\n<p>Filter data using ORM<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>queryset = ModelName.objects.filter(column=value)\nqueryset = ModelName.objects.get(column=value) #this will give you single record\nqueryset = ModelName.objects.filter(column__iexact=value, column2__exact=value2)\nqueryset = ModelName.objects.filter(col__subcol=value) #for relationship<\/code><\/pre>\n\n\n\n<p>Limit records in ORM<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>queryset = ModelName.objects.all()&#91;:10]<\/code><\/pre>\n\n\n\n<p>Order by in ORM<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>queryset = ModelName.objects.all().order_by('columnname')\nqueryset = ModelName.objects.all().order_by('-columnname')\nqueryset = ModelName.objects.all().order_by('columnname').reverse()<\/code><\/pre>\n\n\n\n<p>Relationship in models.py (this should be in Model which has foreign key)<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>foreign_key_col = models.ForeignKey(PrimaryModelName, related_name = 'related_name', on_delete = models.CASCADE, db_column = 'foreign_key_column_name')<\/code><\/pre>\n\n\n\n<p>install packages from requirements.txt for your project<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>python -m pip install -r requirements.txt\"\n<\/code><\/pre>\n\n\n\n<p><a href=\"https:\/\/codeinsightacademy.com\/blog\/python\/django-restframework-cheat-sheet\/\">Django restframework Cheat Sheet (codeinsightacademy.com)<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Install Django Verify Django Installation List all installed python modules \/ packages Create new django project Run Django Project Create New App manage.py help MySql Database connection open db shell with default connection MySql Database Connection Troubleshoot in Windows OSDownload whl package which is compatible with your python versionhttps:\/\/www.lfd.uci.edu\/~gohlke\/pythonlibs\/Find: mysqlclient To check whether python is [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":[],"categories":[9],"tags":[],"_links":{"self":[{"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/posts\/938"}],"collection":[{"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/comments?post=938"}],"version-history":[{"count":21,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/posts\/938\/revisions"}],"predecessor-version":[{"id":1212,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/posts\/938\/revisions\/1212"}],"wp:attachment":[{"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/media?parent=938"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/categories?post=938"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/codeinsightacademy.com\/blog\/wp-json\/wp\/v2\/tags?post=938"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}