linux系统搭建django框架步骤
1: 基于上一篇centos7 搭建python-3.9.1+pycharm+django+mysql

2: 创建工作目录:
mkdir -p /project/mysite4

3: 进入工作目录
cd /project/mysite4

4:创建django项目,项目名称为 mysite4
django-admin startproject mysite4

5: 在项目路径下创建一个templates文件夹,用于存放html模板
mkdir -p /project/mysite4/mysite4/templates

6:创建应用—名称为 bookstore 进入/project/mysite4/mysite4
cd /project/mysite4/mysite4
django-admin startapp bookstore

7:进入数据库创建mysite4 的数据库名称为 mysite4_db
mysql -uroot -p

create database mysite4_db default charset utf8 collate utf8_general_ci;

8: 用pycharm 打开项目:
找到settings.py文件
1): 将ALLOWED_HOSTS = [“*”] ,默认为仅主机
2): 找到"INSTALLED_APPS =" 在后面加上应用名称 “bookstore”
3): 找到"MIDDLEWARE =" 先将"‘django.middleware.csrf.CsrfViewMiddleware’,“注释掉
4): 找到"TEMPLATES = " 将DIRS=[] 添加templates的路径 ‘DIRS’: [os.path.join(BASE_DIR, ‘templates’)],
5): 找到"DATABASES =” 将之前的默认的数据库删除或者注释 添加mysql engine 注意语法{} 是成对出现的 或者删除用我下面的事例
DATABASES = {
‘default’: {
‘ENGINE’: ‘django.db.backends.mysql’,
‘NAME’: ‘mysite4_db’,
‘USER’: “root”,
‘PASSWORD’: ‘123456’,
‘PORT’: ‘3306’,
‘HOST’: ‘127.0.0.1’,
}
}
6): 找到"LANGUAGE_CODE = ‘en-us’" 将其改为"LANGUAGE_CODE = ‘zh-Hans’"

7): 找到"TIME_ZONE = ‘UTC’" 将其改为"TIME_ZONE = ‘Asia/Shanghai’"

8): 找到"init.py"文件, 添加对mysql的支持 在此文件中加入一下内容:
import pymysql
pymysql.install_as_MySQLdb()

9: 用pycharm 软件找到"bookstore"文件夹下面的models文件 在这下面创建类,用来操作数据库
class Book(models.Model): #这里的Book 相当于数据库中的表
title = models.CharField(max_length=30) #title, price, publisher, market_price, pubdate 相当于数据库中的字段
#CharField 相当于数据库中的vachar max_length=30 相当于varchar(30)
price = models.DecimalField(max_digits=7,
decimal_places=2)
publisher = models.CharField(max_length=30)
market_price = models.DecimalField(max_digits=7,
decimal_places=2)
pubdate = models.DateTimeField(auto_now=True)

10: 进入项目目录, 执行数据库迁移命令
cd /project/mysite4/mysite4

python3.9 manage.py makemigrations

python3.9 manage.py migrate

执行成功后进入数据库,查看数据是否同步过来
mysql -uroot -p

执行: show databases;
±-------------------+
| Database |
±-------------------+
| information_schema |
| mysite4_db |
| mysql |
| mywebdb |
| performance_schema |
| sys |
±-------------------+
6 rows in set (0.04 sec)

执行: use mysite4_db;

执行: mysql> show tables;
±---------------------------+
| Tables_in_mysite4_db |
±---------------------------+
| auth_group |
| auth_group_permissions |
| auth_permission |
| auth_user |
| auth_user_groups |
| auth_user_user_permissions |
| bookstore_book |
| django_admin_log |
| django_content_type |
| django_migrations |
| django_session |
±---------------------------+
11 rows in set (0.00 sec)

执行: mysql> desc bookstore_book;

    +--------------+--------------+------+-----+---------+----------------+
| Field        | Type         | Null | Key | Default | Extra          |
+--------------+--------------+------+-----+---------+----------------+
| id           | bigint       | NO   | PRI | NULL    | auto_increment |
| title        | varchar(30)  | NO   |     | NULL    |                |
| price        | decimal(7,2) | NO   |     | NULL    |                |
| publisher    | varchar(30)  | NO   |     | NULL    |                |
| market_price | decimal(7,2) | NO   |     | NULL    |                |
| pubdate      | datetime(6)  | NO   |     | NULL    |                |
+--------------+--------------+------+-----+---------+----------------+
6 rows in set (0.04 sec)

这就是我们用ORM 创建的数据表

11: 创建分布式路由
1): 在pycharm 里面找到"mysite4" 文件夹里找到"urls"文件
导入bookstore 正则模块,include 模块
import bookstore
from django.urls import re_path
from django.urls import include
2): 在"urlpatterns = []" 中加上
urlpatterns = [
path(‘admin/’, admin.site.urls),
re_path(r’bookstore/‘, include(“bookstore.urls”))
]
3): 用pycharm 找到bookstore 文件夹在里面创建 urls.py文件
在里面导入模块:
from django.urls import path, re_path
from . import views
4): 在里面添加如下内容:
urlpatterns = [
re_path(r’add_book’, views.add_book_view),
]

12: 用pycharm 打开bookstore 文件夹里的viws.py文件 在里面添加视图处理函数

1): 导入模块及包
from . import models
from django.http import HttpResponse

2): 定义函数
def add_book_view(request):
#创建添加书的对象:
#方法一:
try:
abook = models.Book.objects.create(
title = “九阳神功”,
price = 19999,
market_price = 29999,
publisher = “清华大学出版社”
)
return HttpResponse(“图书添加成功!”)
except Exception as err:
return HttpResponse(“图书添加失败!”)

13: 进入项目目录:重启服务
python3.9 manage.py runserver 0.0.0.0:5000

14:用浏览器打开"192.168.0.0:5000/bookstore/add_book" ip地址输入自己服务器的ip
显示图书添加成功 一切正常

15: 进入数据库查询图书是否添加成功
mysql -uroot -p

mysql> use mysite4_db;

mysql> select * from bookstore_book;

    +----+--------------+----------+-----------------------+--------------+----------------------------+
| id | title        | price    | publisher             | market_price | pubdate                    |
+----+--------------+----------+-----------------------+--------------+----------------------------+
|  1 | 九阳神功     | 19999.00 | 清华大学出版社        |     29999.00 | 2022-08-22 02:18:49.807497 |
+----+--------------+----------+-----------------------+--------------+----------------------------+
1 row in set (0.00 sec)

证明linux下搭建django 框架成功

en