Django 3.2 开发web项目

  • 开发环境
    • Django安装
    • Django文档
    • Django创建
    • Django启动
    • Django目录介绍
    • Django创建自己的应用
    • CODE IS ALL YOU NEED
      • 无数据库
      • 有数据库(含html页面的展示)
    • 源码链接
    • 吐槽一下

开发环境

系统:window 10
Python版本:Python 3.8
Django版本: 3.2.8
IDE:PyCharm 20

Django安装

one code is ok! pip install django
神奇的python就是这么神奇,多想一秒都是对pip的不信任,pip就完事!

Django文档

想要进一步学习关于Django框架更多知识的大佬请移步官方文档:
传送门:https://docs.djangoproject.com/zh-hans/3.2/

ps:Django官方文档提供了 你所需要知道的关于Django的一切

Django创建

  1. 在PyCharm中创建一个目录用来存放Django项目,我这里创建了一个子目录用来存放本次的django项目:
  2. 从你需要存放django项目的目录打开终端(两种方式:cmd或者pycharm自带的终端Terminal),一般来说,pycharm的自带终端就非常的好用,点一下就行,实惠且方便! 所以,我使用了看起来更能装的cmd,输入命令:
django-admin startproject mysite

那么一个Django项目就创建成功了

Django启动

一个简单的Django项目到这里就已经全部创建完成了,这个时候我们启动一下看看效果。首先进入到manage.py所在文件的目录,使用命令:python manage.py runserver启动Django服务器

在浏览器输入 http://127.0.0.1:8000/, 就可以看到官方所说的小火箭啦

也就是:

Django目录介绍

官方解释:

我:

Django创建自己的应用

在命令行输入 python manage.py startapp my_page就可以创建一个自己的应用 my_page
结构:

  • my_page

    • migrations

      • init.py
    • init.py
    • admin.py
    • apps.py
    • models.py
    • tests.py
    • views.py

简单介绍一下几个比较常用的文件:

  1. view.py 这个文件简单理解为视图层(有过web开发经验的小伙伴应该十分清楚),它的功能简单来说就是前端和后端的一个交互
  2. model.py 定义模型。那么这个文件是什么呢?尽可能往简单了说,python也是面向对象编程(绝对不是面向第三方库编程哈),那么当你需要创建一个对象的时候(可以理解为将这个对象映射到你数据库中的某一张表,没有学过数据库的就当new个对象玩玩),就是它了!
  3. admin.py 这个文件是一个站点配置的文件,当我们定义了一个模型就需要配置一下

CODE IS ALL YOU NEED

效果展示:

没啥好说的,直接上代码

无数据库

  1. 打开view.py,输入:
from django.http import HttpResponse
def hello_world(request):return HttpResponse("hello world! Who is moving bricks now ?")
  1. my_page目录下新建urls.py文件,配置路由这一步非常重要!!!输入:
from django.urls import path
from . import views #这是导入刚才编写的试图层文件urlpatterns = [path("hello_world!", views.hello_world),
]
  1. 打开mysite目录下的setting.py文件,找到**# application definition** 在INSTALLED_APPS中添加:
INSTALLED_APPS = ['django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','my_page.apps.MyPageConfig' # 这是我们需要添加的内容
]
  1. 打开mysite目录下的urls.py文件,配置应用路由,非常重要!!!
from django.contrib import admin
from django.urls import path, include # 导入ncludeurlpatterns = [path('admin/', admin.site.urls),path('my_page/', include("my_page.urls"))  # 配置应用路由
]
  1. 启动服务器 python manage.py runserver在浏览器中打开http://127.0.0.1:8000/my_page/hello_world 。就可以看见效果了:

有数据库(含html页面的展示)

Django非常的人性化,给我们提供了一个自带的默认的Sqlite数据库,这个数据库怎么样我也不知道,但是用起来还是很舒服的。

  1. 打开model.py,新建一个打工人对象
from django.db import modelsclass moveBricker(models.Model):moveBricker_id = models.AutoField(primary_key=True)   # 主键自增moveBricker_name = models.TextField()                 # 字符串类型的变量moveBricker_house = models.TextField()moveBricker_car = models.TextField()moveBricker_life = models.TextField()def __str__(self):return self.moveBricker_name
  1. 打开admin.py,写入:
from django.contrib import admin
from .models import MoveBrickeradmin.site.register(MoveBricker)
  1. 检查一下mysite目录下的setting.py,如果和我下图的不一致,那么有可能会出现问题!!!
  2. 在命令行输入python manage.py makemigrations生成迁移文件和python manage.py migrate执行迁移。
  3. 注册admin管理员账号,在命令行输入python manage.py createsuperuser,输入用户名,邮箱和密码,邮箱可选。
  4. 启动服务器,打开网址: http://127.0.0.1:8000/admin/ , 输入账号密码。就会进入Django默认创建的一个后台管理的页面,非常香!一个小小的课设就解决了!!!
  5. 点开Move brickers ,欸~ 神奇的django sqlite就是这么神奇!接下来让我们手动添加两条数据!

  6. 打开view.py,添加如下代码:
from . import models
...
def get_moveBricker(request):all_moveBricker = models.MoveBricker.objects.all()name1 = all_moveBricker[0].moveBricker_namehouse1 = all_moveBricker[0].moveBricker_housecar1 = all_moveBricker[0].moveBricker_carid1 = all_moveBricker[0].moveBricker_idname2 = all_moveBricker[1].moveBricker_namehouse2 = all_moveBricker[1].moveBricker_housecar2 = all_moveBricker[1].moveBricker_carid2 = all_moveBricker[1].moveBricker_idreturn_str = "id:%s, name:%s, house:%s, car:%s;" % (id1, name1, house1, car1) \+ "id:%s, name:%s, house:%s, car:%s" % (id2, name2, house2, car2)return HttpResponse(return_str)
  1. my_page目录下的urls.py文件配置路由
urlpatterns = [path("hello_world", views.hello_world),         # 已经配置过了的path("get_moveBricker", views.get_moveBricker)  # 新配置的路由
]
  1. 启动服务器 python manage.py runserver在浏览器中打开http://127.0.0.1:8000/my_page/get_moveBricker 。

  2. 这种方式真的是蠢死了,而且非常不方便,那么怎么才能舒服一下呢。那么接下来就引入我们的html页面了。

  3. my_page目录下新建templates,在templates下新建my_page目录,然后在my_page里面新建一个html文件,有点绕,上图

  4. get_moveBricker.html编写代码

<!DOCTYPE html>
<html lang="en">
<head><meta charset="UTF-8"><title>get_moveBricker</title>
</head>
<body>{% for move_bricker in move_brickers %}<div><p>id:{{ move_bricker.moveBricker_id }},name:{{ move_bricker.moveBricker_name }},house:{{ move_bricker.moveBricker_house }},car:{{ move_bricker.moveBricker_car }};</p></div>{% endfor %}
</body>
</html>

这是一个循环代码,一眼就能看明白,无非就是语法的问题。其他的知识也与本次分享的Django框架的技术无法所以不多说

  1. view.py文件中新建一个方法,然后配置路由:
def get_moveBricker_list(request):all_moveBricker = models.MoveBricker.objects.all()return render(request, "my_page/get_moveBricker.html", {"move_brickers": all_moveBricker})
urlpatterns = [path("hello_world", views.hello_world),path("get_moveBricker", views.get_moveBricker),path("get_moveBricker_list", views.get_moveBricker_list)   #这是新配置的路由
]
  1. 又到了激动人心的启动服务器的时刻,不过要注意的是,本次访问的地址是 :http://127.0.0.1:8000/my_page/get_moveBricker_list 。

  2. 收工干饭!!!

源码链接

链接:https://pan.baidu.com/s/1byeYl4DmaNTDqFV89v2YSw
提取码:pqt9

吐槽一下

实验室都是python的深度学习项目,于是想着用python做一个网站玩玩,逛了一圈,看了很多大佬的博客,写的非常好!!!有些博客中的内容已经随着版本的更迭,可能无法运行起来了。又因为实验室项目的需求发现CS的架构比BS架构更香,于是学了一圈,发现又要去学新的技术啦!。就把自己学习Django3.2的过程记录了下来。希望能够帮助到有需要的小伙伴。祝搬砖的路上一切顺利!!!

Django 3.2 开发web项目相关推荐

  1. 使用Spring Boot开发Web项目

    前面两篇博客中我们简单介绍了spring Boot项目的创建.并且也带小伙伴们来DIY了一个Spring Boot自动配置功能,那么这些东西说到底最终还是要回归到Web上才能体现出它的更大的价值,so ...

  2. weblogic下开发web项目时修改java文件不用重启的绿色方法,不用修改weblogic的配置文件、不用jar...

    2019独角兽企业重金招聘Python工程师标准>>> weblogic下开发web项目时修改java文件不用重启的绿色方法,不用修改weblogic的配置文件.不用jar      ...

  3. html资源文件放在哪里,09 Spring Boot开发web项目之静态资源放哪里?

    Spring Boot开发web项目之静态资源放哪里? 先了解自动装配autoconfiguration 这些内容是spring boot天然集成好的框架 找到WebMvcAutoConfigrati ...

  4. 使用eclipse开发web项目运行时出现中文乱码问题

    使用eclipse开发web项目运行时出现中文乱码问题 检查Tomcat sever.xml中的编码设置是否为 utf-8 ,不是的话改一下: <?xml version="1.0&q ...

  5. eclipse开发web项目

    对比idea开发web项目 ###1,使用eclipse开发web项目(jsp项目) 1,先将eclipse与tomcat关联一下 window->preferences->server- ...

  6. Eclipse开发Web项目入门篇

    前言:以前一直使用myeclipse 8 开发web,今天特意使用eclipse,所以在这小记一下,一来有需要的可以参考下,二来随手做个笔记备用 (转载请说明出处:http://blog.csdn.n ...

  7. python开发web项目_Django2:Web项目开发入门笔记(20)

    该楼层疑似违规已被系统折叠 隐藏此楼查看此楼 这一篇教程,我们一起来了解如何在CentOS系统中将Django2的Web项目部署到Nginx服务器. CentOS系统虽然和Ubuntu系统都是Linu ...

  8. ktor框架用到了netty吗_如何使用 Ktor 快速开发 Web 项目

    一. Ktor 介绍 Ktor 是一个高性能的.基于 Kotlin 的 Web 开发框架,支持 Kotlin Coroutines.DSL 等特性. Ktor 是一个由 Kotlin 团队打造的 We ...

  9. Bootstrap4+MySQL前后端综合实训-Day06-AM【eclipse详细配置Tomcat、开发web项目、servlet、连接MySQL8.0数据库、用户登录界面的编写与验证、分页查询】

    [Bootstrap4前端框架+MySQL数据库]前后端综合实训[10天课程 博客汇总表 详细笔记][附:实训所有代码] 目   录 eclipse重置视图 MySQL数据库--建数据库.建数据库 s ...

最新文章

  1. 不同于NLP,数据驱动方法与机器学习无法攻克NLU,原因有三点
  2. 问题(待完成):微服务,失败回滚?保持事务的原子性?多步骤调用,如何来实现...
  3. Python: 绝对导入 Absolute Imports
  4. 成功解决Ignoring invalid distribution -yqt5
  5. C语言spirograph算法图形绘制(附完整源码)
  6. 转载:SVN插件的手动安装
  7. 头条自己提问的问题在哪看_在头条的这三十天
  8. 利用PCF8591进行AD转换
  9. poj 2395 prime的递归实现
  10. [vue]vue路由篇vue-router
  11. 最好的python3视频教程_哪里有免费的python3教程啊?最好是有例子的视频教学
  12. Excel如何将数据填充完下方的空白单元格
  13. matlab对矩阵谱分解
  14. 电信光纤猫与无线路由器连接
  15. 用python的pandas打开csv文件_python读写数据读写csv文件(pandas用法)
  16. 解决ImageView超出父控件(或屏幕边界)时,图片挤压问题
  17. 水星mw300r虚拟服务器,水星(Mercury)MW300R无线路由器设置
  18. yarn unlink 简单使用
  19. 20-Django REST framework-Serializer序列化器
  20. Windows一键启动jar包bat脚本制作

热门文章

  1. Python 扫雷游戏 完整源代码+图片素材
  2. 难以置信,已经有人用 ChatGPT 做 Excel 报表了?
  3. 此IP地址不允许调用接口,如有需要请登录微信支付商户平台更改配置
  4. 《说服力-让你的PPT会说话》9月上海公开课简章
  5. Unity中实现动态天空盒
  6. 随机数 == 伪随机数?
  7. 如何培养自己的赚钱能力
  8. 《PHP挖宝》2—Symfony包介绍
  9. rx7900xt和gtx3090ti差距 rx7900xt和gtx3090ti哪个好
  10. 如何将数据移动到新硬盘(装机)