| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> Python知识库 -> Django 项目学习 -> 正文阅读 |
|
[Python知识库]Django 项目学习 |
目录 2、路由:完成浏览器请求地址与项目中所调用应用以及函数的映射配置 4、模型:django中位于视图层和数据库之间的组件,将python对象和数据库表之间进行转换(可以屏蔽不同数据库之间的差异,开发者更加专注于业务逻辑的开发,提供很多便捷工具有助于开发) 五、Django shell 与 Django admin 模块 3、编辑blog中视图views内容,完成访问blog中view,返回hello world字符串 好久没写文章了,最近开始学习python的web框架django,在慕课上找到三小时入门Django框架三小时带你入门Django框架-新版视频教程-慕课网,边学边记录一下历程。代码地址: 一、环境问题1、python环境安装两种方式安装python环境,python或者 anaconda? 2、django安装python安装好之后,安装pip命令,可以直接的使用pip install Django==2.0 安装django ?3、IDE选择pycharm 二、 Django命令--实际使用在后面文章中介绍
三、Django项目和应用的关系django应用 一个Django应用就是一个可重用的Python软件包;每个应用可以自己管理模型、视图、模板、路由和静态文件等 一个Django项目包含一组配置和若干个Django应用 1、Django项目中目录介绍
3、Django应用中目录介绍
四、Django中MTV模式以及视图、路由、模型理解1、MTV模式
2、路由:完成浏览器请求地址与项目中所调用应用以及函数的映射配置3、视图:来产生内容,业务处理逻辑4、模型:django中位于视图层和数据库之间的组件,将python对象和数据库表之间进行转换(可以屏蔽不同数据库之间的差异,开发者更加专注于业务逻辑的开发,提供很多便捷工具有助于开发)根据以上内容的理解,画出一张django项目调用流程图,个人理解,仅供参考 五、Django shell 与 Django admin 模块django shell类似python shell 可以进行交互式的编程,还继承了Django项目的环境,方便开发、调试和debug 如何使用:祥见 六--4--(3)创建一篇文章 django admin?django的后台管理工具,读取定义的模型的元数据,提供强大的管理使用页面;使用django shell 新增文章太费劲,使用 django admin 就可以很方便的新增文章;认证用户、显示管理模型, 如何使用:详见六--4--?(4)使用django admin 创建管理员用户+登录页面进行模型管理 六、实际应用--Django创建博客web项目过程1、创建Django项目校验输入等功能类似win+R? 打开运行框,输入cmd,进入命令框 ;进入项目代码存储目录,输入如下命令创建django项目:django-admin startproject project_name 创建好项目之后,进入项目路径下,可以通过dir命令查看目录下的文件 将创建好的django项目使用pycharm打开 2、创建一个blog应用在pycharm中,打开项目中的Terminal,输入如下命令创建一个应用: python manage.py startapp appname 3、编辑blog中视图views内容,完成访问blog中view,返回hello world字符串首先,如果想返回hello world字符串,得现在blog-views中编写函数返回hello word; 然后在修改项目以及应用的路由,将浏览器中访问的路径映射到blog-views中的函数。 先修改应用blog的路由urls.py;在urls.py文件中,添加urlpatterns--path实现字符串和函数的匹配 ?再修改整个项目中的urls.py,添加应用级别的 路径匹配信息 ?再修改项目的settings.py文件,把blog应用添加到项目的配置settings文件里面 ?最后验证下,功能是否实现,# 在终端Terminal输入命令运行,将django项目启动运行 python manage.py runserver 可以再浏览器输入http://127.0.0.1:8000/blog/hello_world?验证 Django的请求流程: 浏览器发送请求->项目路由转发请求给项目应用->项目应用中找到视图函数->视图函数通过应用路由转发给函数->函数返回结果给浏览器 此图来源慕课老师ppt 4、 创建bolg博客文章模型,浏览器返回文章信息(1)首先了解下模型层相关的配置 setting.py文件中DATABASE ; db.sqlite3 是数据库相关的配置 模型层的实体的属性都写到应用中的models.py中 ?(2) 创建博客文章模型 先设计博客文章模型,文章标题(文本类型-string)、摘要(文本类型-string)和内容(文本类型-string)、唯一ID标记(int数字类型-自增、主键)、发布日期(日期类型) 接着模型层定义字段
实现博客文章模型-blog.models.py ?定义好了之后,将模型的定义保存到数据库(模型迁移), ① 在terminal中输入如下命令,将模型生成对应的迁移文件: python manage.py makemigrations ?如上图已经成功创建迁移文件,在blog项目的目录下生成文件, ② 接下来执行下面命令,将生成的迁移文件同步到数据库中 :python manage.py migrate ?(3)新建一篇文章 terminal 中 输入命令:python manage.py shell? ,进入django shell 环境, 接下来可以在django shell中进行调试,新建文章 ?(4)使用django admin 创建管理员用户+登录页面进行模型管理 ①创建超级管理员用户 terminal中输入 命令创建超级管理员用户:python manage.py createsuperuser ②登录页面进行模型管理 ?接下来,将django项目跑起来,python manage.py runserver ,然后来到浏览器,输入地址 访问管理页面?http://127.0.0.1:8000/admin/login/? 输入刚才注册的用户密码 可以通过后台的管理页面看到 用户和组的信息, 但是没看到刚才创建的文章信息,是因为我们没有将文章模型信息加入到admin中,下面+一下 打开IDE,打开blog应用下的admin.py文件,输入如下代码,就完成将模型注册进admin了 ?刷新浏览器,就看到新增的Article了 ?点击Articles就可以通过页面进行新增博客了 ?看上图的文章列表,每个文章我们分辨不出题目是什么,就需要新增一个方法 来显示文章的title,回到models.py中新增函数 就可以再去查看admin列表,显示文章的标题了 ? ?(5)实现博客数据返回页面 ① 编辑返回博客文章数据的函数 在models.py中 ②配置路由,应用的就可以,因为上面的步骤中,项目到应用的路由已经添加好了 blog下面的urls.py ?③ 访问路径去读文章内容?http://127.0.0.1:8000/blog/content 5、使用django视图与模板 返回文章内容(1) 使用bootstrap实现静态博客页面 首先在blog应用目录下创建一个Templates文在Templates目录下创建一个 index.html文件 ?然后将bootstrap框架的静态文件拷贝进来?起步 · Bootstrap v3 中文文档 | Bootstrap 中文网 ?放到head中 接下来进行首页index.html 开发body,将body分成2个部分标题和内容,内容又分为左右两个部分呢,左边占9个栅格,右边占3个栅格, 再进行文章详情页开发,在templates文件夹下新建html文件,detail.html; 以上为使用bootstrap实现两个静态页面 (2)使用django模板系统渲染博客页面-index、detail 现在开始改造index 和 detail页面,将固定的静态内容改成模板语法 article_list哪里来的呢?是我们自己需要实现的函数,接下来进入views.py中实现get_index_page函数 还需要在templates文件夹下创建一个blog目录,将index.html和detail.html文件放入blog下面, 再去应用的urls.py下面增加这个文章内容的路径设置 将项目运行起来,访问页面(http://127.0.0.1:8000/blog/index)可以看到,将刚才加入的文章信息,展示读取到页面中? 相同工作再去修改下detail页 ?(3)实现文章详情页面的跳转 ① 设计文章详情页面的URL? ? blog/detail/1 ==>博客id为1的文章 ②url路径参数的获取-在blog.urls.py中获取 ?接下来改造 视图中的函数 ?修改完,访问页面?http://127.0.0.1:8000/blog/detail/1?即可看到详情页 ③ 实现首页跳转 改造index.html 在article.title添加上<a>标签 访问index 页面能点击连接进行跳转了 ? ??(4)实现上下篇文章的跳转-detail页添加2按钮 ?①修改详情页,增加两个按钮 去bootstrap 组件 · Bootstrap v3 中文文档 | Bootstrap 中文网?中找到按钮 复制到代码中 ②修改视图中函数
再去访问详情页,即能看到两个翻页按钮 ?个人学习历程,仅供参考,共同进步 |
|
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/16 3:19:55- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |