How to create a Django project + connect to MySQL

How to create a Django project + connect to MySQL

1: django-admin.py startproject project name

2: cd project name

3: Modify setting.py

(1): ALLOWED_HOSTS = [] => ALLOWED_HOSTS = [“*”]

(2): LANGUAGE_CODE = 'en-us' => LANGUAGE_CODE = 'zh-hans'

(3): TIME_ZONE = 'UTC' => TIME_ZONE = 'Asia/Shanghai'

4: Create the app

django-admin.py startproject app name

5: Modify setting.py

INSTALLED_APPS array added => 'app name'

6: Add a utils folder under the project directory to encapsulate multiple app public methods

7: Add a new util file in the app directory to encapsulate common methods of the app

8: Add a new view folder under the app directory to store the logic code of each page

9: Add a new routing file (urls.py) in the app directory to store all routes under this app

Format:
	from django.urls import path
	from .views import wx_pay
	urlpatterns = [
		 path("test", wx_pay.wx_pay().test, name="test"), # test ]

10: Add app routing to project routing; modify urls.py in the project directory

from django.contrib import admin
from django.urls import path, include
from H5 import urls as h5_urls
urlpatterns = [
		path('admin/', admin.site.urls),
	path("h5/", include(h5_urls))
]

At this point, the Django project directory structure has been configured , and you can then enter the development phase.

We often use databases during development; here's how to configure the database

11: Modify setting.py in the project directory

default:
DATABASES = {
 'default': {
  'ENGINE': 'django.db.backends.sqlite3',
  'NAME': BASE_DIR / 'db.sqlite3',
 }
}
After modification:
DATABASES = {
 'default': {
 'ENGINE' : 'django.db.backends.mysql',
 'NAME': 'Database name (hereinafter referred to as DATABASE1)',
 'USER':'Username',
 'PASSWORD': 'Database password',
 'HOST':'ip address',
 'PORT':'Port'
 }
}

12: Open the database and add the database name configured above (DATABASE1)

13: Configure the model and enter the models.py file in the app directory

import time

from django.db import models

# Create your models here.

 class Test(models.Model):
  str = models.CharField("string", max_length=30, null=True, blank=True)
  num = models.IntegerField("number", default=1, null=True, blank=True)
  create_time = models.DateTimeField("time", default=time.strftime('%Y-%m-%d %H:%M:%S'), blank=True)

14: Migrate data to the database

python manage.py makemigrations

python manage.py migrate

15: At this time, the following error is likely to be reported:

Traceback (most recent call last):
Omit some in the middle
"/Library/Frameworks/Python.framework/Versions/3.9/lib/python3.9/site-packages/MySQLdb/__init__.py", line 24, in <module>
version_info, _mysql.version_info, _mysql.__file__

NameError: name '_mysql' is not defined

This error is mainly because Mysqldb is not compatible with python3.5 and later versions

16: Modify __init_.py in the project directory and add the following code

import pymysql

pymysql.version_info = (1, 4, 13, "final", 0)

pymysql.install_as_MySQLdb()

Well, now all the commonly used configurations are complete.

This is the end of this article about how to create a Django project + connect to MySQL. For more information about how to create a Django project and connect to MySQL, please search for previous articles on 123WORDPRESS.COM or continue to browse the following related articles. I hope you will support 123WORDPRESS.COM in the future!

You may also be interested in:
  • A brief understanding of the Django project application creation process
  • Django project creation and management implementation process detailed explanation
  • Django framework installation and project creation process analysis
  • Several ways to create Django projects in Python3 (3 kinds)
  • Detailed explanation of creating Python Django projects and applications

<<:  Implementation of 2D and 3D transformation in CSS3

>>:  Perfect solution to the problem that Navicat cannot connect after installing mysql in docker

Recommend

The phenomenon of margin-top collapse and the specific solution

What is margin-top collapse Margin-top collapse i...

Mysql implementation of full-text search and keyword scoring method example

1. Introduction Today a colleague asked me how to...

CSS tips for controlling animation playback and pause (very practical)

Today I will introduce a very simple trick to con...

Solution to Incorrect string value in MySQL

Many friends will report the following error when...

JavaScript function encapsulates random color verification code (complete code)

An n-digit verification code consisting of number...

Linux process management tool supervisor installation and configuration tutorial

Environment: CentOS 7 Official documentation: htt...

How to implement html input drop-down menu

Copy code The code is as follows: <html> &l...

Background image cache under IE6

CSS background image flickering bug in IE6 (backg...

How to mount the CD to find the rpm package under Linux

Written in front Sometimes you need to install so...

Steps to use ORM to add data in MySQL

【Foreword】 If you want to use ORM to operate data...

CSS3 speeds up and delays transitions

1. Use the speed control function to control the ...

CSS method of controlling element height from bottom to top and from top to bottom

Let’s start the discussion from a common question...

MySQL free installation version configuration tutorial

This article shares the MySQL free installation c...

Detailed process of zabbix monitoring process and port through agent

Environment Introduction Operating system: centos...