《Django 5 By Example》阅读笔记:p521-p542

news/2024/12/13 22:39:43/文章来源:https://www.cnblogs.com/codists/p/18606031

《Django 5 By Example》学习第 18 天,p521-p542 总结,总计 22 页。

一、技术总结

1.django-parler

django-parler 用于 model 的 translate。这里要注意下,使用 django-parler 之后会生成新的表,对原来的表数据有影响。本人未在实际项目中做过国际化开发,但个人觉得这种做法不好。

2.项目:e-learning

(1)subject & course

from django.db import models
from django.contrib.auth.models import User# Create your models here.class Subject(models.Model):title = models.CharField(max_length=200)slug = models.SlugField(max_length=200, unique=True)class Meta:ordering = ['title']def __str__(self):return self.titleclass Course(models.Model):owner = models.ForeignKey(User, related_name='courses_created', on_delete=models.CASCADE)subject = models.ForeignKey(Subject, on_delete=models.CASCADE, related_name='courses')title = models.CharField(max_length=200)slug = models.SlugField(max_length=200, unique=True)overview = models.TextField()created = models.DateTimeField(auto_now_add=True)class Meta:ordering = ['created']def __str__(self):return self.titleclass Module(models.Model):course = models.ForeignKey(Course, related_name='modules', on_delete=models.CASCADE)title = models.CharField(max_length=200)description = models.TextField(blank=True)def __str__(self):return self.title

虽然作者使用了 ForeignKey() 定义 subject 和 course 的关系,但是我觉得ManyToManyField() 更好一些,因为一门课程可以从属于多个专业。

二、英语总结(生词:2)

1.accommodate

p537, You will learn how to create flexible data models that accommodate diverse data types and discover how to implement custom model functionalities that you can apply to your future Django projects.

(1)accommodate: ad-("to") + commodare("make fit")

vt. fit one thing to another(适应)。

三、其它

1.再次体会作者的“废话文学”

In the previous chapter, you learned the basics of the internationalization and localization of Django projects, adapting your project to meet the local formats and languages for your users.

In this chapter, you will start a new Django project that will consist of an e-learning platform with your own content management system (CMS). Online learning platforms are a great example of applications that require tools for advanced content handling. You will learn how to create flexible data models that accommodate diverse data types and discover how to implement custom model functionalities that you can apply to your future Django projects.

In this chapter, you will learn how to:

•Create models for the CMS

•Create fixtures for your models and apply them

•Use model inheritance to create data models for polymorphic content

•Create custom model fields

•Order course contents and modules

•Build authentication views for the CMS

这是第 12 章的开篇内容,我们来梳理一下:

第一段介绍了前面一章(第 11 章)的内容,然后呢?跟后一章有什么关系吗?这个过渡咱能不能衔接一下?

第二段介绍了需要学习的内容(在线学习平台+CMS(内容管理系统))。Online learning platforms are a great example of applications that require tools for advanced content handling.——great, advanced 这些形容词非常模糊,完全没有必要,什么叫great example?前面 11 章的 example 是不是 great example? 什么叫 advanced content handling?

总之概括下来就是说着说了很多东西,但是又好像什么都没说。

2.再谈书名《Django 5 By Example》

看到第 12 章我悟了,这本书重点在于“如何使用 Django 实现 Example”,而不是“Django技术详解”。

四、参考资料

1. 编程

(1) Antonio Melé,《Django 5 By Example》:https://book.douban.com/subject/37007362/

2. 英语

(1) Etymology Dictionary:https://www.etymonline.com

(2) Cambridge Dictionary:https://dictionary.cambridge.org

欢迎搜索及关注:编程人(a_codists)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/852138.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

反光衣穿戴识别摄像机

反光衣穿戴识别摄像机利用高清摄像头捕捉道路上的实时图像,并通过图像处理算法进行人体检测和识别,识别出穿戴反光衣的行人和工作者。其特点包括高精度的人体识别算法、多视角的监测能力和实时的自动识别与报警功能。通过这些特点,反光衣穿戴识别摄像机能够有效地提高识别的…

Scala中常量val和变量var的区别

一 val和var的区别 Scala的变量分为两种 val是常量,一旦定义值后就不能修改 var是变量,可以被重新赋值 常量: 如图所示,先给常量val赋值为100,再去修改val的值会导致报错 这里定义常量时,没有写类型,scala会自动推导类型完整的常量写法 变量:(值可变) 下方,先将name变…

linux web终端wetty食用方法

学校有些机房电脑性能贼垃但又不得不去那些机房上课 我也不想带电脑,于是弄台廉价的服务器 本来想拿个公网ip配frp连我电脑完事 想到vim是在终端中运行的编辑器 于是想弄个web终端然后就找到了wetty 别问为什么不用面板的终端 面板终端没一个好用 官网:https://github.com/bu…

转载:【AI系统】MobileVit 系列

自 Vision Transformer 出现之后,人们发现 Transformer 也可以应用在计算机视觉领域,并且效果还是非常不错的。但是基于 Transformer 的网络模型通常具有数十亿或数百亿个参数,这使得它们的模型文件非常大,不仅占用大量存储空间,而且在训练和部署过程中也需要更多的计算资…

转载: 【AI系统】GhostNet 系列

本文主要会介绍 GhostNet 系列网络,在本文中会给大家带来卷积结构的改进方面的轻量化,以及与注意力(self-attention)模块的进行结合,部署更高效,更适合移动计算的 GhostNetV2。让读者更清楚的区别 V2 与 V1 之间的区别。 GhostNet V1 模型 GhostNet V1:提供了一个全新的 Gh…

转发:【AI系统】指令和存储优化

除了应用极广的循环优化,在 AI 编译器底层还存在指令和存储这两种不同优化。 指令优化 指令优化依赖于硬件提供的特殊加速计算指令。这些指令,如向量化和张量化,能够显著提高计算密度和执行效率。向量化允许我们并行处理数据,而张量化则进一步扩展了这一概念,通过将数据组…

转发:【AI系统】算子循环优化

在具体硬件执行计算的时候,实际会大量地使用 for 等循环指令不断地去读取不同的数据执行重复的指令(SIMT/SIMD),因此循环优化主要是为了提升数据的局部性或者计算的并行性,从而提升整体算子性能,当然这二者都需要 AI 芯片硬件的支持。 循环优化挑战 数据局部性 数据的局部…

《计算机基础与程序设计》第12周学习总结

学期(如2024-2025-15) 学号(如:20241404) 《计算机基础与程序设计》第12周学习总结 作业信息这个作业属于哪个课程 https://edu.cnblogs.com/campus/besti/2024-2025-1-CFAP/这个作业要求在哪里 https://msg.cnblogs.com/item/4306363这个作业的目标作业正文 https://www.…

7、C语言-标识符、键盘录入scanf

变量名命名规则由数字、字母、下划线_ 组成 不能以数字开头 不能是关键字(如 if等) 严格区分大小写建议变量名尽量都小写 用英文单词,做到见名知意 代码文件名 尽量都小写键盘录入scanfscanf,是scanner format的缩写、是C语言提供的一个函数 作用:获取用户在键盘上输入的数…

智能行为防错识别系统

智能行为防错识别系统的核心在于实时监控和分析工人的操作行为,智能行为防错识别系统依托高清摄像头捕捉工作场景,智能行为防错识别系统通过计算机视觉算法对视频中的人体关键点进行识别,如手腕、肩膀、膝盖等,从而提取人体动作的细节特征。这些关键点的识别和特征提取,使…

群晖 docker ZeroTier方案

zerotierZeroTier 官方解释为将整个世界转变为单个数据中心或云区域,将所有设备,虚拟机和应用程序联接起来,就像在同一个交换机接入所有设备一样。zerotier 类似 VPN, 为内网服务器所在 NAT 网络和客户机所在 NAT 网络各虚拟出一个 VLAN, 这样俩个 VLAN 就可以通过 ZeroTier…

43. JavaScript流程控制、函数、对象、BOM、DOM

1. 流程控制 1.1 if判断 [1] 单if分支if(条件){   条件成立运行的代码 } [2] if...else分支if(条件){   条件成立运行的代码 }else{   条件不成立运行的代码 }var a = 10; if (a >= 20) {console.log("ok") } else {console.log(&q…