django(三)网页的修改

本文介绍如何使用Django框架创建一个简单的在线留言应用,包括HTML模板制作、样式设置、数据库配置及数据表生成等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.将from.html文件复制到templates

在这里插入图片描述

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title></title>
    <link rel="stylesheet" href="/static/css/style.css">
	<style>
		.smart-green {
			margin-left: auto;
			margin-right: auto;
			max-width: 500px;
			background: #F8F8F8;
			padding: 30px 30px 20px 30px;
			font: 12px Arial, Helvetica, sans-serif;
			color: #666;
			border-radius: 5px;
			-webkit-border-radius: 5px;
			-moz-border-radius: 5px;
		}

		.smart-green h1 {
			font: 24px "Trebuchet MS", Arial, Helvetica, sans-serif;
			padding: 20px 0px 20px 40px;
			display: block;
			margin: -30px -30px 10px -30px;
			color: #FFF;
			background: #9DC45F;
			text-shadow: 1px 1px 1px #949494;
			border-radius: 5px 5px 0px 0px;
			-webkit-border-radius: 5px 5px 0px 0px;
			-moz-border-radius: 5px 5px 0px 0px;
			border-bottom: 1px solid #89AF4C;
		}

		.smart-green h1 > span {
			display: block;
			font-size: 11px;
			color: #FFF;
		}

		.smart-green label {
			display: block;
			margin: 0px 0px 5px;
		}

		.smart-green label > span {
			float: left;
			margin-top: 10px;
			color: #5E5E5E;
		}

		.smart-green input[type="text"], .smart-green input[type="email"], .smart-green textarea, .smart-green select {
			color: #555;
			height: 30px;
			line-height: 15px;
			width: 100%;
			padding: 0px 0px 0px 10px;
			margin-top: 2px;
			border: 1px solid #E5E5E5;
			background: #FBFBFB;
			outline: 0;
			-webkit-box-shadow: inset 1px 1px 2px rgba(238, 238, 238, 0.2);
			box-shadow: inset 1px 1px 2px rgba(238, 238, 238, 0.2);
			font: normal 14px/14px Arial, Helvetica, sans-serif;
		}

		.smart-green textarea {
			height: 100px;
			padding-top: 10px;
		}


		.smart-green .button {
			background-color: #9DC45F;
			border-radius: 5px;
			-webkit-border-radius: 5px;
			-moz-border-border-radius: 5px;
			border: none;
			padding: 10px 25px 10px 25px;
			color: #FFF;
			text-shadow: 1px 1px 1px #949494;
		}

		.smart-green .button:hover {
			background-color: #80A24A;
		}

		.error-msg{
			color: red;
			margin-top: 10px;
		}
		.success-msg{
			color: #80A24A;
			margin-top: 10px;
			margin-bottom: 10px;
		}
	</style>
</head>
<body>
<form action="/form/" method="post" class="smart-green">
    <h1>留言信息
        <span>请留下你的信息.</span>
    </h1>
    <label>
        <span>姓名 :</span>
        <input id="name" type="text" name="name" class="error" placeholder="请输入您的姓名"/>
        <div class="error-msg"></div>
    </label>

    <label>
        <span>邮箱 :</span>
        <input id="email" type="email" value="" name="email" placeholder="请输入邮箱地址"/>
        <div class="error-msg"></div>
    </label>

    <label>
        <span>联系地址 :</span>
        <input id="address" type="text" value="" name="address" placeholder="请输入联系地址"/>
        <div class="error-msg"></div>
    </label>

    <label>
        <span>留言 :</span>
        <textarea id="message" name="message"  placeholder="请输入你的建议"></textarea>
        <div class="error-msg"></div>
    </label>
    <div class="success-msg"></div>
    <label>
        <span>&nbsp;</span>
        <input type="submit" class="button" value="提交"/>
    </label>
    <input type='hidden' name='csrfmiddlewaretoken' value='SfHkbL4feo1G00sJQtbO7TtLN4c2BUwa' />
</form>

</body>
</html>

2.在static目录下新建一个css文件夹

在这里插入图片描述

3.在css目录下新建一个style.css文件

在这里插入图片描述

4.复制from中的样式文件

在这里插入图片描述

5.将第一行和最后一行的标签删除

在这里插入图片描述

6.修改数据库信息,连接数据库

在这里插入图片描述

7.安装“mysql-python”

注意:python3安装的包是“mysqlclient”,而python2安装的包是“mysql-python”

下载地址:https://www.lfd.uci.edu/~gohlke/pythonlibs/#mysql-python

讲解:https://blog.youkuaiyun.com/GIS_BT/article/details/78970999
在这里插入图片描述

8.调试

在这里插入图片描述

img

8.1注意如果出现如下警告请检查配置是否书写正确;是否缺符号

在这里插入图片描述

9.生成数据表

9.1输入命令migrate

img

9.2注意检查之前输入的,尝试了好几次才成功
'ENGINE': 'django.db.backends.mysql',
'NAME':  'testjango',
'USER':  'root',
'PASSWORD': '123456',
'HOST': '127.0.0.1',
'PORT': '3306',
9.3查看新建的数据表

img

10.将新页面加入程序

10.1打开apps/message/views.py在程序里面添加
# Create your views here.
def getform(request):
    return render(request,'message_form.html')

img

10.2打开untitled3(同自己工程名)/urls.py

具体:https://blog.youkuaiyun.com/SilentWu/article/details/88205831

python3

from django.contrib import admin
from django.urls import path
from apps.message.views import getform

urlpatterns = [
    path('admin/', admin.site.urls),
    path('form/', getform)
]

python2

省略
10.3打开http://127.0.0.1:8000/form/网址,查看;

在这里插入图片描述

11.项目配置流程

在这里插入图片描述

### 使用Django创建网页应用 #### 准备工作 为了启动一个新的Django项目,需先安装Django环境。确保Python已正确安装并设置好虚拟环境之后,可以通过pip工具来安装Django: ```bash pip install django ``` 确认安装成功后可以查看版本号验证。 #### 创建新项目 通过命令行输入`django-admin startproject mysite`来初始化新的Django工程[^1]。这会生成一个名为`mysite`的基础目录结构用于支持整个网站运作所需的各种组件和服务。 #### 设置模板路径 为了让视图能够找到HTML文件,在项目的配置文件`settings.py`里指定模板查找位置非常重要。具体来说就是调整`TEMPLATES`列表中的`DIRS`选项指向正确的模板存储地址[^2]: ```python import os from pathlib import Path BASE_DIR = Path(__file__).resolve().parent.parent TEMPLATES = [ { 'BACKEND': 'django.template.backends.django.DjangoTemplates', 'DIRS': [os.path.join(BASE_DIR, 'templates')], ... }, ] ``` 这样做的目的是让Django知道去哪里寻找用户界面所需的HTML文件。 #### 数据库配置 对于大多数Web应用程序而言,持久化数据管理不可或缺。在Django中,只需编辑同一份`settings.py`里的DATABASES字典就可以轻松完成这项任务。这里展示了一个MySQL数据库实例的设定方式[^4]: ```python DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'your_database_name', 'USER': 'database_user', 'PASSWORD': 'password', 'HOST': 'localhost', 'PORT': '3306', } } ``` 请注意替换上述代码片段内的占位符为实际使用的值。 #### 构建模型与同步数据库 定义好业务逻辑对应的类(即Model),再利用迁移机制使这些变更反映到物理层面的数据表上。通常情况下,新增加或修改后的model都需要经历makemigrations和migrate两个阶段才能正式生效: ```bash python manage.py makemigrations appname python manage.py migrate ``` 其中appname代表含有该model的应用名称。 #### 开发视图函数 接下来编写处理HTTP请求的具体方法——views.py。每一个URL映射都对应着至少一个这样的处理器负责返回响应给客户端浏览器显示出来。下面是一个简单的例子说明如何渲染带有动态内容页面: ```python from django.shortcuts import render def index(request): context = {'title': '欢迎来到主页'} return render(request, 'index.html', context) ``` 这里的`render()`接受个参数依次是request对象、要加载的模板名以及传递给前端呈现的信息集合。 #### URL路由设计 最后一步是要告诉服务器哪些网址应该交给哪个view去解析。打开urls.py添加如下形式的一条记录即可实现这一点: ```python from django.urls import path from . import views urlpatterns = [ path('', views.index, name='home'), ] ``` 至此已经完成了基本功能模块搭建过程概述。当然这只是冰山一角,随着需求复杂度增加还会涉及到更多高级特性的运用比如认证授权、缓存优化等等。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值