Django留言本实战

目录

创建一个Django的项目,选择对应的虚拟环境:

新建app

配置数据库:

生成数据表

配置静态资源文件:

配置url

运行项目


Django的实战学习笔记

 

创建一个Django的项目,选择对应的虚拟环境:

getImage?fileId=5cb990f8ab644163eb0027abuploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb990f8ab644163eb0027abuploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb990f8ab644163eb0027abuploading.4e448015.gif转存失败重新上传取消

建立项目所需要的目录和结构:

apps:存放应用的目录

media:存放用户上传的数据文件

log:存放日志文件

static:存放静态样式文件

Templates:存放静态前端文件

getImage?fileId=5cb990f8ab644163eb0027a9uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb990f8ab644163eb0027a9uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb990f8ab644163eb0027a9uploading.4e448015.gif转存失败重新上传取消

新建app

使用下图的命令新建app

getImage?fileId=5cb990f8ab644163eb0027aauploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb990f8ab644163eb0027aauploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb990f8ab644163eb0027aauploading.4e448015.gif转存失败重新上传取消

 

命令:startapp app名称

 

然后注册app,打开settings.py文件,在下图处追加app名称进行注册

注意:如果app不是在主目录,需标注清楚app的目录

getImage?fileId=5cb9918eab644163eb0027c2uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb9918eab644163eb0027c2uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb9918eab644163eb0027c2uploading.4e448015.gif转存失败重新上传取消

 
  1. # Application definition
  2.  
  3. INSTALLED_APPS = [
  4.     'django.contrib.admin',
  5.     'django.contrib.auth',
  6.     'django.contrib.contenttypes',
  7.     'django.contrib.sessions',
  8.     'django.contrib.messages',
  9.     'django.contrib.staticfiles',
  10.     'apps.message'
  11. ]

 

配置数据库:

 

打开settings.py文件,完成如下图的数据库配置:

getImage?fileId=5cb99522ab644163eb002910uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002910uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002910uploading.4e448015.gif转存失败重新上传取消

 
  1. DATABASES = {
  2.     'default': {
  3.         'ENGINE': 'django.db.backends.mysql',
  4.         'NAME': 'djangostart',
  5.         'USER':'root',
  6.         'PASSWORD':'w270225324',
  7.         'HOST':'127.0.0.1',
  8.     }
  9. }

 

这一步在执行时可能报错,原因是缺少pymysql的驱动文件,下载安装即可;

生成数据表

完成后使用pycharm的命令创建Django的默认数据表:

命令:makemigrations

再执行:migrate

然后即可在Navicat中查看已生成的数据表

 

配置静态资源文件:

在templates目录创建静态文件

 

打开app下的view.py文件,建立返回页面,如下图:

getImage?fileId=5cb99522ab644163eb002915uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002915uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002915uploading.4e448015.gif转存失败重新上传取消

 
  1. from django.shortcuts import render
  2. #导入models.py中'创建表的类'
  3. from .models import FromTable
  4.  
  5. def getfrom(request):
  6.  
  7.     return render(request,'message_from.html')
  8.     

配置url

以上完成后,配置urls.py中的url:

getImage?fileId=5cb99522ab644163eb002916uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002916uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002916uploading.4e448015.gif转存失败重新上传取消

 

 
  1. from django.contrib import admin
  2. from django.urls import path
  3. from django.conf.urls import url
  4. #导入视图中的返回的html页面的函数getfrom
  5. from apps.message.views import getfrom
  6.  
  7. urlpatterns = [
  8.     path('admin/', admin.site.urls),
  9.     #下面表示以^开始,$结束的完成目录,即http://127.0.0.1:8000/from/
  10.     #这里定义name的好处是,在html页面就不用使用/from/了,可以使用{% url 'go_grom' %}来提交了,
  11.     #这样的话,就是用别名来提交了,前面的r'^from/$'怎么修改,都不会影响html数据的提交
  12.     url(r'^from/$',getfrom,name='go_from')
  13. ]

运行项目

这时,运行项目,可能会出现样式未加在的错误,

打开settings.py文件,在最后static的目录中配置静态文件的地址

如下图:

getImage?fileId=5cb99522ab644163eb002914uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002914uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002914uploading.4e448015.gif转存失败重新上传取消

然后,建立model,创建数据表,打开app下的models.py文件:

getImage?fileId=5cb99522ab644163eb00291euploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb00291euploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb00291euploading.4e448015.gif转存失败重新上传取消

然后生成数据表,打开pycharm的命令窗口,

执行如下命令:

makemigrations app名称

再执行:

migrate app名称

 

OK!!即可在Navicat中查看对应数据

 

Model的增删改查:

 

 

在view.py中导入前面在models.py中建立的创建表的类

getImage?fileId=5cb99522ab644163eb002917uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002917uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002917uploading.4e448015.gif转存失败重新上传取消

getImage?fileId=5cb99522ab644163eb00291duploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb00291duploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb00291duploading.4e448015.gif转存失败重新上传取消

取html页面表单提交的数据方法:

查数据:

getImage?fileId=5cb99522ab644163eb002919uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002919uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002919uploading.4e448015.gif转存失败重新上传取消

增加数据:

getImage?fileId=5cb99522ab644163eb002912uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002912uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002912uploading.4e448015.gif转存失败重新上传取消

在html表单页面显示数据库中已有的数据,用户可以选择修改

getImage?fileId=5cb99522ab644163eb002918uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002918uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002918uploading.4e448015.gif转存失败重新上传取消

html中利用value进行取值:

第一种方式,直接取值

getImage?fileId=5cb99522ab644163eb002913uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002913uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002913uploading.4e448015.gif转存失败重新上传取消

第二种方式:利用 if 语句判断性取值;

getImage?fileId=5cb99522ab644163eb00291buploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb00291buploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb00291buploading.4e448015.gif转存失败重新上传取消

第三种方式:if…else语句多级判断显示:

getImage?fileId=5cb99522ab644163eb00290fuploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb00290fuploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb00290fuploading.4e448015.gif转存失败重新上传取消

第四种方法:利用 not 做反向判断:

getImage?fileId=5cb99522ab644163eb00291auploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb00291auploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb00291auploading.4e448015.gif转存失败重新上传取消

在urls.py中添加别名,让html利用别名来提交数据

getImage?fileId=5cb99522ab644163eb002911uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002911uploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb002911uploading.4e448015.gif转存失败重新上传取消

getImage?fileId=5cb99522ab644163eb00291cuploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb00291cuploading.4e448015.gif转存失败重新上传取消getImage?fileId=5cb99522ab644163eb00291cuploading.4e448015.gif转存失败重新上传取消

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值