自制py小网站

81 阅读1分钟

自制小网站

前端文件目录结构

.
├── css
├── img
├── js
└── plugins
    ├── bootstrap-3.4.1
    │   ├── css
    │   ├── fonts
    │   └── js
    └── font-awesome-4.7.0
        ├── css
        ├── fonts
        ├── less
        └── scss

1.1 前端栈

  • html
  • css
  • javascript,jQuery:动态效果
  • BootStrap:实现动态效果依赖jQuery
<head>
 <!--引入bootstrap文件-->
<link rel="stylesheet" href="static/plugins/bootstrap-3.4.1/css/bootstrap.css">
<!---引入font-awesome文件-->
<link rel="stylesheet" href="static/plugins/font-awesome-4.7.0/css/font-awesome. css"> 
</head>

<body>
<!--引入jquery和bootstap.js-->
<script src="static/js/jquery-3.6.0.min.js"></script> 

<script src="static/plugins/bootstrap-3.4.1/js/bootstrap.js"></script>
</body>

1.2 后端栈

  • pymysql
  • Django

2.1 pymysql基本操作

import pymysql
# 连接myql
conn = pymysql.connect(host="127.0.0.1",port=3306,user="root",passwd="",database="")
# 使用cursor创建游标对象
cursor = conn.cursor()
# 发送命令
sql="""create table tb2(
    id int not null,
    name varchar(16) not null,
    mobile int not null)
    """
#执行命令
cursor.execute(sql) 
#将命令提交到数据库
conn.commit()
#关闭连接
cursor.close()
conn.close()
  • 格式化
sql="inserted into tb2(id, name, mobile) values(%s,%s,%s)"

cursor.execute(sql,["1"],"zhangjing","123455"]))
  • 查询数据库数据
sql="select * from tb2"  
cursor.execute(sql)  
result=cursor.fetchall()  #获取所有数据
result2=cursor.fetchone()  #获取单条数据
for data in result:  
    print(data)
  • 错误时回滚

conn.rollback()

3.1 Django安装

pip install django -i http://pypi.douban.com/simple --trusted-host pypi.douban.com

3.1.2 Django文件夹目录结构

  • 默认项目目录结构
First
├── manage.py
└── First   【项目同名文件夹】
    ├── __init__.py  
    ├── settings.py  【项目配置】  【常常操作】
    ├── urls.py  【URL和函数对应关系】 【常常操作】
    ├── asgi.py   【接收网络请求】
    └── wsgi.py  【接收网络请求】

3.1.3 Django项目创建

  • 进入终端,cd到创建项目的目录
  • django-admin startproject 【项目名】

3.1.4 Django创建app

  • python3.11 manage.py startapp 【APP名称】
  • 目录结构
├── app01
│   ├── __init__.py
│   ├── admin.py   【不动】默认提供admin后台管理
│   ├── apps.py    【不动】app启动类
│   ├── migrations   【不动】数据库变更记录
│   │   └── __init__.py
│   ├── models.py   【**重要】对数据库操作
│   ├── tests.py    【固定】单元测试
│   └── views.py    【**重要】函数
├── manage.py
└── First   
    ├── __init__.py  
    ├── settings.py  
    ├── urls.py    【URL->函数】
    ├── asgi.py   
    └── wsgi.py  

Django项目

  • 在setting.py内写入app app01.apps.App01Config
  • 在urls.py编写URL和视图函数关系
# 将views从app01导入
from app01 import views
urlpatterns = [
   # www.xxx.com/index/ -> 函数
    path('url',views.函数名),
]
  • 在view.py中编写函数
def 函数名(request):
    return HttpResponse("欢迎使用")
  • 启动项目 python manage.py runserver