首页 > 其他分享 >《Django 5 By Example》阅读笔记:p679-p765

《Django 5 By Example》阅读笔记:p679-p765

时间:2024-11-20 17:47:33浏览次数:1  
标签:POSTGRES duplex db Django p679 p765 Example postgres

《Django 5 By Example》学习第10天,p679-p765总结,总计87页。

一、技术总结

1.channel

书里通过聊天软件功能演示Django中channel以及异步编程的应用,本人对这块不是很熟悉,不做评价。

2.deployment(部署)

services:
  db:
    image: postgres:16.2
    restart: always
    volumes:
      - ./data/db:/var/lib/postgresql/data
    environment:
      - POSTGRES_DB=postgres
      - POSTGRES_USER=postgres
      - POSTGRES_PASSWORD=postgres

  cache:
    image: redis:7.2.4
    restart: always
    volumes:
      - ./data/cache:/data

  web:
    build: .
    command: ["./wait-for-it.sh", "db:5432", "--",
              "uwsgi", "--ini", "/code/config/uwsgi/uwsgi.ini"]
    restart: always
    volumes:
      - .:/code
    ports:
      - "8000:8000"
    environment:
      - DJANGO_SETTINGS_MODULE=educa.settings.prod
      - POSTGRES_DB=postgres
      - POSTGRES_USER=postgres
      - POSTGRES_PASSWORD=postgres
    depends_on:
      - db
      - cache
  ...(其它内容省略)

看了作者的写的docker-compose.yml,这里要多说两句:

(1)在docker-compose.yml里面包含build命令,本人觉得这是一种不好的写法。因为重启服务的次数是远远多于build次数的,同时也没有必要每次都build。

(2)服务命名为db,本人觉得这是一种不好的写法。因为db的含义不明确,可以指“MySQL,Oracle,MongoDB, Redis”等,这里使用的是Postgresql数据库,那么直接用postgresql命名更好。

(3)数据库命名为postgres,本人觉得这是一种不好的写法。因为含义不明确。

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

1.engage

(1)engage: en-("in") + gage("a pledge, commitment, or security,保证,承诺")。

p679, In this chapter, you will develop a chat server for students using Django Channels, enabling students to engage in real-time messaging within course chat rooms. engage的用法比较多,这里的意思是:to get involved in sth, to take part in sth.

2.emerging

p685, ASGI is the emerging Python standard for asynchronous web servers and applications.

(1)emerge: e-("out, from") + mergere("to dip ")

vi. to rise from, to rise out of.

(2) emerging

adj. starting to exist.

3.duplex

p685, WebSockets provide full-duplex communication by establishing a persistent, open, bidirectional Transmission Control Protocol (TCP) connection between servers and clients.

(1)duplex: duo-("two") + plex("to plait(把...编成辫子)")

adj. composed of two parts. n. house or other building so divided that it forms two dwelling places.

上面的full-duplex communication的意思是(全双工通信)。

三、其它

chapter 16简评:这一章涉及到前面几章的内容,如果对Django中的channel不熟,感觉不是好理解。个人觉得读下来有点混乱。

chapter 17简评:chapter 17将部署,现在流行使用Docker部署,书里使用的也是这种方式,可以说与时俱进,总体来说读下来还是比较流畅的,毕竟内容也不算发展,总之概括下来就是要多实践。唯一的缺点就是作者写的docker-compose.yml不大规范(上面已介绍,这里不再展开)。

四、参考资料

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)

标签:POSTGRES,duplex,db,Django,p679,p765,Example,postgres
From: https://www.cnblogs.com/codists/p/18558905

相关文章

  • 蓝易云 - Django自带的Admin后台中如何获取当前登录用户
    在Django的Admin后台中,可以通过 request.user来获取当前登录的用户对象。下面是获取当前登录用户的方法:在你的Admin后台的自定义视图或方法中,首先导入 fromdjango.contrib.auth.decoratorsimportlogin_required和 fromdjango.contrib.admin.views.decoratorsimportst......
  • 《Django 5 By Example》阅读笔记:p651-p678
    《Django5ByExample》学习第9天,p651-p678总结,总计28页。一、技术总结1.aggregate()(1)aggregate:ad-("to")+gregare("tocollectionintoaflock(群),togather")因为ad后面跟的是gregate,为了发音方便,ad演变为了ag。aggregate的本意是:vt.tocombineintoasinglegrou......
  • python+vue基于django/flask的连锁超市销售管理系统(超市库存与销售管理平台)java+nodej
    目录技术栈和环境说明具体实现截图预期达到的目标系统设计详细视频演示技术路线解决的思路性能/安全/负载方面可行性分析论证python-flask核心代码部分展示python-django核心代码部分展示研究方法感恩大学老师和同学源码获取技术栈和环境说明本系统以Python开发语言......
  • python+vue基于django/flask的奖学金评定系统(奖学金申请与管理平台)java+nodejs+php-计
    目录技术栈和环境说明具体实现截图预期达到的目标系统设计详细视频演示技术路线解决的思路性能/安全/负载方面可行性分析论证python-flask核心代码部分展示python-django核心代码部分展示研究方法感恩大学老师和同学源码获取技术栈和环境说明本系统以Python开发语言......
  • python+vue基于django/flask的同城篮球赛事场地预约系统java+nodejs+PHP-计算机毕业设
    目录技术栈和环境说明具体实现截图预期达到的目标系统设计详细视频演示技术路线解决的思路性能/安全/负载方面可行性分析论证python-flask核心代码部分展示python-django核心代码部分展示研究方法感恩大学老师和同学源码获取技术栈和环境说明本系统以Python开发语言......
  • 《Django 5 By Example》阅读笔记:p645-p650
    《Django5ByExample》学习第8天,p645-p650总结,总计6页。一、技术总结1.django-rest-framework(1)serializerp648,Serializer:ProvidesserializationfornormalPythonclassinstances。Serializer又细分为Serializer,ModelSerializer,HyperlinkedModelSerializer.2.......
  • django mysqlclient orm
    要在Django中连接MySQL数据库,你需要确保你的环境中安装了mysqlclient这个Python库。以下是连接MySQL数据库的步骤:安装mysqlclient库。如果你使用的是pip,可以通过以下命令安装:pipinstallmysqlclient在你的Django项目的settings.py文件中,修改DATABASES设置以使用MySQL数据库。......
  • django的model时间怎么转时间戳
    在Django中,模型(Model)中的日期和时间字段通常使用Django的DateTimeField或相关字段来存储。如果你想要将这些日期时间字段转换为Unix时间戳(即自1970年1月1日以来的秒数),你可以使用Python的datetime模块中的timestamp()方法。以下是一个例子,展示了如何将Django模型中的DateTim......
  • 基于python+django的旅游数据分析与推荐系统
    前言基于python+django的旅游数据分析与推荐系统,为游客提供了智能化的旅游决策支持。系统从多种途径收集旅游数据,包括旅游网站的用户评价、景点预订信息、酒店入住数据等。通过数据清洗和预处理,确保数据的准确性和可用性。在分析方面,它能挖掘出有价值的信息。例如,......
  • 基于python+django的国内运动男装小红书文章数据可视化分析系统的设计与实现
    前言基于python+django的国内运动男装小红书文章数据可视化分析系统,为深入了解运动男装市场在小红书平台的表现提供了有效途径。系统通过网络爬虫技术收集小红书上有关国内运动男装的文章数据,包括文章内容、点赞数、收藏数、评论数、发布者信息等。对这些数据进行清......