Django官方文档_Lion King的博客-程序员秘密_django官方文档

技术标签: django  Django  

一、文档地址

https://docs.djangoproject.com/zh-hans/3.2/

1.1 编写你的第一个 Django 应用,第 1 部分

1.1.1 创建项目

使用django的系统工具django-admin执行指令,即可创建

django-admin startproject mysite

目录结构显示如下

mysite/
    manage.py
    mysite/
        __init__.py
        settings.py
        urls.py
        asgi.py
        wsgi.py

最外层的 mysite/ 根目录只是项目的容器,可任意修改。

1.1.2 创建应用

使用django的系统工具django-admin执行指令,即可创建

python manage.py startapp polls

polls是投票应用,目录结构显示如下

polls/
    __init__.py
    admin.py
    apps.py
    migrations/
        __init__.py
    models.py
    tests.py
    views.py

编写应用的流程

 1.2 编写你的第一个 Django 应用,第 2 部分

1.2.1 数据库配置

在settings.py中配置即可,默认BASE_DIR / 'db.sqlite3'数据库。

1.2.2 创建数据库

在models.py文件中创建,编写类,继承models.Model。

1.2.3 激活模型

在settings.py中注册应用,接着迁移,然后执行迁移。

1.2.4 初试API

通过API的操作,可以对数据库的表进行增删改查,并且可定义数据库应该返回的数据。

1.2.5 介绍Django管理页面

通过注册数据库到admin.py中,可以实现对数据库数据的直接管理。

 1.3 编写你的第一个 Django 应用,第 3 部分

1.3.1 编写更多视图

对views.py中的接口进行增加,定义了请求格式和响应格式。提供一些函数来处理请求和响应,如render()、Http404、get_object_or_404() 等等。

1.3.2 使用模板系统

在遵循模板语法的情况下,可以通过python的语法,对web页面的数据进行处理。

 1.3.3 去除模板中的硬编码URL

polls.urls 的 url()函数中通过 name 参数为 URL 定义了名字,因此可以使用 {% url %} 标签代替它

1.3.4 为URL名称添加命名空间

通过urls.py中定义app_name来处理url同名的情况。

1.4 编写你的第一个 Django 应用,第 4 部分

1.4.1 编写一个简单的表单

结合模板标签和前端知识,进行表单的编写。

1.4.2 使用通用视图:代码还是少点好

采用默认的通用视图,可以较少代码的编写,需要优化URLconf和视图

1.5 编写你的第一个 Django 应用,第 5 部分

1.5.1 开始写我们的第一个测试

编写测试脚本,脚本类继承TestCase,运行python manage.py test polls来启动测试,测试的内容可以是视图或模型。

1.5.2 测试视图

可通过测试工具client进行手动测试。也可以通过tests.py文件进行自动化测试。

1.6 编写你的第一个 Django 应用,第 6 部分

1.6.1 自定义 应用 的界面和风格

模板中,通过外部引入css样式,以实现风格变化,如改变字体颜色、背景图等等。

1.7 编写你的第一个 Django 应用,第 7 部分

1.7.1 自定义后台表单 

可通过注册、关联的方式定义后台表单,并可以在项目中定义工程的模板,这个适合应用分开的,settings里面,TEMPLATES变量控制的是自带的站点管理模板。

二、工程地址

笔记和代码都已经融入进工程里,感兴趣的朋友可自行下载。

https://download.csdn.net/download/weixin_43431593/21100393?spm=1001.2014.3001.5501

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/weixin_43431593/article/details/119699396

智能推荐

HTML效果总结_sunxing0302的博客-程序员秘密

HTML效果总结文字横向滚动看我滚动了!其中重要的属性:direction:left/right 确定文字移动的方向behavior=alternate 文字来回滚动 #=次数;若未指定则循环不止(infinite)scrollamount 确定文字移动的速度----------------------------------------------------

艺术~在单机和分布式环境下的限流算法(漏桶算法、令牌桶算法)_Listen-Y的博客-程序员秘密_令牌桶是单机

文章目录前言限流算法滑动窗口限流漏桶算法令牌桶算法单机限流和分布式限流限流组件前言今天总结学习一下限流的相关内容,包括常见的限流算法、单机限流场景、分布式限流场景以及一些常见限流组件。那就引来第一个问题,什么是限流?为什么要限流?首先来解释下什么是限流?在日常生活中限流很常见,例如去有些景区玩,每天售卖的门票数是有限的,例如 2000 张,即每天最多只有 2000 个人能进去游玩。这就是一个限流,那么再来回答第二个问题为什么要限流?依旧刚刚那个例子,如果不限流会怎么样,就会把景区挤爆。那换在

好雨云帮开发者大赛第二期:「Beego」_ZYQDuron的博客-程序员秘密

用最拿手的语言和框架,在很棒棒的severless架构PaaS平台上做沉浸式DevOps流开发,轻松抱得大奖归![好雨云帮开发者大赛「第二期」:Beego]剧情已写好,就差有创意、有技术、有天赋、有实力的你来参加!Programmers,开始你的表演吧!

IMWEB 前端面试题汇总_weixin_34226706的博客-程序员秘密

1.什么是盒子模型?CSS中的思维模型,每一个元素都包含margin,padding,boder,content区域,占一个盒子形状,整体称为盒模型.2.简述一下src与href的区别?Href 超文本链接,指向网络资源所在位置,如果我们在文档添加<link href="common.css" rel="stylesheet...

采用图像增强,二值/边缘检测对跑道图预处理,用radon变换检测跑道线,radon反变换得结果_火球2号的博客-程序员秘密

MATLAB的radon变换检测跑道线①预处理:图像增强、消噪、分割、边缘化;②Radon变换:边缘图像作Radon变换③直线检测:搜索变换域内局部最大值(亮点) , 根据识别规则, 检测目标直线变换域参数, 确定目标类型④直线拟合。⑤输出结果。I=imread('runway.jpg');imshow(I);I1=I(:,:,1);%提取红色分量I2=I(:,:,2);%提取绿色分量I3=I(:,:,3);%提取蓝色分量I1=histogram(I1); %构造的函数I2=h

随便推点

Unity开发时遇到的各种需要注意的地方_魔术师Dix的博客-程序员秘密_executionengineexception: string conversion error:

前言:最近在做东西的时候突然想到,自己以前做过的项目有很多地方需要注意的,然而并没有记录下来,导致下次还会出现这样的问题。于是就有了这个想法,把之前各种各样奇奇怪怪的问题都记录下来,解决方案也写下了。一是加深记忆,二是万一又遇到了好歹也有个参考;正文:1、Transform.GetComponentsInChildren找不到组件!?这是因为Transform.G...

MapInfo数据交换文件格式浅探_zhihu008的博客-程序员秘密_mapinfo中用于格式交换的外部数据交换标准的文件是

摘  要:MAPINFO这一大型桌面地理信息系统软件提供了tab格式和MIF(MID)两种数据格式,其中tab是其内部数据存储格式,所有基于该软件的应用系统都以此格式为依托。MIF(MID)是MAPINFO的外部数据交换文件格式,MAPINFO主要通过MIF,MID两个文件与其他GIS软件建立数据接口,方便数据使用。主要介绍Mapinfo的数据转换格式,防止在使用中转换信息丢失。关键词:Map

【Lua】【1】Lua游戏脚本语言入门(转载)_夜雨蝉鸣的博客-程序员秘密

http://job.17173.com/content/2009-01-22/20090122143452606,5.shtml ;作者: 沐枫 (第二人生成员)  在这篇文章中,我想向大家介绍如何进行Lua程序设计。我假设大家都学过至少一门编程语言,比如Basic或C,特别是C。因为Lua的最大用途是在宿主程序中作为脚本使用的。  Lua 的语法比较简单,学习起来也

opencv 三通道图像的分通道显示_pom_001的博客-程序员秘密

偶然看到opencv中的merge函数,发现与它经常在一起的还有split函数,决定对这两个函数做个试验前面考虑调用一次split函数后,将bluechanel赋值给其它两个通道,结果是只有蓝色的显示出来,绿色和红色通道都是黑的,可能是共用内存的原因吧,(半道出家编程,也是醉了,orz)效果如下

Ubuntu 12.04 64位安装及iNode和N卡驱动安装_wzcqr0501的博客-程序员秘密_inode驱动文件夹

Ubuntu 12.04是最新的LTS版,会享有官方五年的更新支持。之前我都用的是32位的10.04做Android编译,这次想试一试64位的12.04,用64位的系统必然就面临一些软件的兼容问题及其相关的莫名其妙的问题,但如果确实有更好的性能的话,还是值得一试。Ubuntu 12.04安装    现在用的电脑已经装了win8系统,留出一个31G的分区来安装Ubuntu,下载好了Ubunt

内存设置+hugepage 学习_太阳以西?的博客-程序员秘密_/dev/hugepage

内存设置例1:不加内存参数,模拟一个默认大小内存的客户机系统。[email protected]:/home/img# qemu-system-x86_64 ubuntu14.04.img 在客户机中常用的两种查看内存信息的方式1、使用free -m查看内存信息free命令通常用来查看内存的使用情况,“-m”参数是指内存大小以MB为单位来显示。在上面示例中,我们使用了默认大小的内存,值为128M,而根据上面输出可知总的内存为113MB,这个值比128MB小,这是因为free命令显示的内存是实际能够使

推荐文章

热门文章

相关标签