【Django】-4- 數據庫存儲和管理

一、關于ORM?

ORM 是啥呀

ORM 就是用?面向對象?的方式,把數據庫里的數據還有它們之間的關系映射起來~就好像給數據庫和面向對象之間搭了一座小橋梁🎀

對應關系大揭秘

面向對象和數據庫里的東西,有超有趣的對應呢👇

  • ?→ 數據庫里的?
    就像類是個小模具,能做出好多實例對象~表也是數據庫里存數據的小容器呀,存著好多記錄噠🥰
  • 屬性?→ 表的?字段
    屬性是類里描述東西的小特性,字段就是表里面每一列的小身份,規定了存啥樣的數據喲~像 “姓名”“年齡” 這種?
  • 方法?→ 對數據的?操作
    方法是類里能做的小功能,比如 “計算”“修改”~對應到數據庫里,就是對數據增刪查改這些操作啦,像給數據換件新衣服一樣👗
  • 實例對象?→ 表的?記錄
    實例對象是類造出來的具體 “小家伙”,記錄就是表里面一行一行的數據~比如一條學生信息,就是一個可愛的小記錄呀📝

ORM 超棒的好處呀

用 ORM 來操作數據庫(增刪查改),不用寫 SQL 語句,靠面向對象的代碼就好啦,好處多多噠🥳

  • 降低難度
    不用費勁記復雜的 SQL 語法啦,用熟悉的面向對象代碼,像玩游戲一樣操作數據庫,簡單又快樂🎮
  • 減少失誤
    代碼更規整,不容易寫錯~就像走在鋪好的小路上,不容易摔跤出錯喲👣
  • 兼容多種數據庫
    不管是 MySQL、PostgreSQL,還是 MariaDB、Sqlite3 這些數據庫小伙伴,ORM 都能友好相處~不用為換數據庫重新學一堆新東西,超省心噠💖

二、創建Model?

class Feedback(models.Model)?這行代碼,就是在定義一個?數據庫表的 “藍圖”?。在 Django 里,繼承?models.Model?的類,會對應數據庫中的一張表,用來存數據~

1. 類定義
class Feedback(models.Model):  # 數據庫中: 表

  • class Feedback:定義了一個叫?Feedback?的類,它就像一個 “模具”,決定了數據庫表長啥樣。
  • (models.Model):繼承 Django 提供的?models.Model?類,這樣 Django 才會把這個類識別成數據庫模型,幫我們和數據庫打交道~
  • 注釋?# 數據庫中: 表:說明這個類對應數據庫里的一張表,表名默認是小寫的類名(比如這里可能對應?feedback?表,Django 會自動處理命名規則 )。

2. 字段定義(對應數據庫的列)

下面這些代碼,是給表定義?字段(列)?,規定存啥數據、怎么存~

quality = models.IntegerField('商品質量', default=1)  # 數據庫: 字段

  • quality:是字段名,你可以理解成 “列的名字”,存商品質量相關的數據。
  • models.IntegerField:說明這個字段存?整數?類型的數據(比如 1、2、3… 用來打分很方便 )。
  • '商品質量':是給這個字段起的 “中文別名”,方便看代碼時知道它干啥用的(數據庫里實際存的是?quality?,但開發時看別名更直觀 )。
  • default=1:如果創建數據時沒給這個字段賦值,就默認填?1?(比如用戶沒打分,默認給 1 分 )。

同理,下面這幾個字段邏輯差不多:

attitude = models.IntegerField('客服態度', default=1)  # 數據庫: 字段
speed = models.IntegerField('物流速度', default=1)  # 數據庫: 字段

  • attitude?存 “客服態度” 的整數評分,speed?存 “物流速度” 的整數評分,默認都是?1?分~

text = models.TextField('評論內容', max_length=150, default="")  # 數據庫: 字段

  • text:字段名,存用戶的評論內容。
  • models.TextField:存?長文本?(比如用戶寫的一段評價 )。
  • '評論內容':中文別名,方便理解。
  • max_length=150:限制最多寫 150 個字符,避免評論太長~
  • default="":沒寫評論的話,默認存空字符串。

anonymous = models.BooleanField('是否匿名', default=True)  # 數據庫: 字段

  • anonymous:字段名,存 “是否匿名” 的狀態。
  • models.BooleanField:存?布爾值?(True 或 False ,也就是 “是” 或 “不是” )。
  • '是否匿名':中文別名。
  • default=True:默認 “匿名”(創建數據時,沒選的話就默認匿名 )。

3. 普通屬性(和數據庫無關)
name: str = 'bf'  # 普通的屬性
objects: models.QuerySet  # 普通的屬性

? ?Python 的?:?是類型注解

  • name: str = 'bf':這是?普通的類屬性?,和數據庫表的字段沒關系!它就是這個?Feedback?類里的一個變量,存個字符串?'bf '?,可能是開發時臨時用的,不會同步到數據庫里~
  • objects: models.QuerySet:也是普通屬性(不過實際開發中,Django 會自動給模型類加?objects?,用來操作數據庫,比如查詢數據。這里提前標注類型,讓代碼更清晰 ),同樣和數據庫表的結構無關,是 Python 代碼里用的~

models.QuerySet?就像一個?魔法小籃子?🧺,專門裝從數據庫里 “撈” 出來的寶貝數據喲~

它超能干的!?

  1. 挑挑揀揀?🔍
    比如想找出所有 “商品質量” 大于 3 分的反饋?
    喊它一聲:Feedback.objects.filter(quality__gt=3)
    它就會變出一個裝著符合條件數據的小籃子,超乖~

  2. 排排坐?🔄
    想按 “物流速度” 從快到慢排好隊?
    告訴它:Feedback.objects.order_by('-speed')
    它就會把數據整整齊齊排好,像小士兵一樣~

  3. 算一算?🧮
    想知道大家給的 “客服態度” 平均分?
    拜托它:Feedback.objects.aggregate(Avg('attitude'))
    它立馬算出結果,像個小計算器~

小秘密哦 🤫

  • 懶羊羊屬性?😴:你讓它準備籃子時,它才不著急去找數據呢~ 等到你真的要 “看” 里面的東西(比如遍歷、打印),它才嗖地一下跑去數據庫拿,超會摸魚~
  • 連環魔法?🔗:可以讓它先挑揀再排序,比如?filter(...).order_by(...),像玩積木一樣拼操作,超靈活~

總之呀,QuerySet?就是幫我們和數據庫 “對話” 的小可愛 🗣?,想要啥數據,跟它說一聲就好啦~ 是不是超棒!🥳

總結一下

  • 這個?Feedback?類對應數據庫里一張表,存用戶反饋數據(商品質量、客服態度、物流速度評分,評論內容,是否匿名 )。
  • 繼承?models.Model?后,Django 會幫我們把類轉換成數據庫表,字段對應表的列,不用手動寫 SQL 建表啦~
  • 普通屬性(像?name?、objects?)是 Python 代碼里自己用的,和數據庫表結構沒關系~

三、遷移數據庫?

遷移是干啥噠?

遷移(migrations)就像個 “代碼→數據庫” 的翻譯官~💬
把咱們寫的?Model?代碼(比如之前的?Feedback?類),變成數據庫能聽懂的 “指令”,讓數據庫真的長出對應的表、字段!

簡單說:把 Python 里的模型設計,同步到真實數據庫里生效~??

四大遷移命令

1.?makemigrations?👉 寫 “遷移劇本”

makemigrations  基于模型的修改創建遷移。

  • 作用:當你改了?Model(比如新增字段、改默認值),它會幫你寫一個 “遷移劇本”📝
    就像記錄:“這次要給數據庫表加個新字段啦~”“那個字段默認值要變喲~”
  • 舉例:
    你給?Feedback?加了個?phone = models.CharField('電話', max_length=20),跑?makemigrations,它就生成一個包含 “新增?phone?字段” 的遷移文件!

2.?showmigrations?👉 看 “遷移進度”

showmigrations  列出項目的遷移和遷移的狀態。

  • 作用:查看所有遷移文件的狀態~ 👀
    能看到哪些遷移已經 “applied(應用到數據庫了)”,哪些還 “ pending(等著執行)”
  • 場景:
    想知道 “之前改的模型同步到數據庫沒?” 跑它就知道啦!像查快遞進度一樣~

3.?sqlmigrate?👉 看 “翻譯后的 SQL”

sqlmigrate  展示遷移使用的 SQL 語句。

  • 作用:把 “遷移劇本” 翻譯成數據庫能懂的?SQL 語句~(比如?CREATE TABLEALTER TABLE?這些)
    相當于讓你 “偷看” 遷移背后的 SQL 魔法咒語!🪄
  • 用法:
    比如有個遷移文件?0001_initial.py,跑?sqlmigrate 你的應用名 0001,就能看到它要執行哪些 SQL~

4.?migrate?👉 執行 “遷移劇本”

migrate  負責應用和撤銷遷移。

  • 作用:真正把 “遷移劇本” 應用到數據庫!讓修改?生效~ ?
    也能撤銷遷移(比如回退到之前的版本)
  • 常用場景:
    • 第一次同步模型:migrate?會創建所有表
    • 改了模型后:先?makemigrations?寫劇本,再?migrate?執行劇本,數據庫就跟著變啦~

簡化命令(pdm 玩家專屬!)

pdm run init

  • 這是用?pdm?包管理工具時,簡化的 “一鍵遷移” 命令~ 🚀
    可能背后幫你自動執行?makemigrations?+?migrate?這些步驟(具體看項目配置),讓你少敲命令,超省心!

遷移流程小劇場🎬

假設你新建了?Feedback?模型:

  1. 寫好?Model?代碼 → 跑?makemigrations?→ 生成 “創建?Feedback?表” 的遷移文件
  2. 跑?migrate?→ 數據庫執行 SQL,真的創建出?feedback?表!
  3. 后來你給?Feedback?加了個字段 → 再跑?makemigrations(生成 “加字段” 的遷移文件)→ 跑?migrate(數據庫表真的多了這個字段)

manage.py 是啥

manage.py?是 Django 項目創建時就自帶的一個 Python 腳本。它封裝了很多常用的管理命令,你不需要去記那些命令具體在哪個模塊,只要通過?manage.py?,再加上對應的子命令,就能完成各種操作。比如:

  • 創建新的應用:可以運行?python manage.py startapp 應用名?,就像變魔法一樣,幫你快速創建一個新的 Django 應用,里面自動生成一些基礎的文件結構。
  • 啟動開發服務器:使用?python manage.py runserver?,就能啟動本地的開發服務器,方便你在開發過程中預覽項目效果,不用手動去配置服務器相關的復雜操作。

為什么要通過 manage.py 執行 migrate

migrate?這個子命令,作用是把前面提到的遷移文件應用到數據庫中,讓數據庫的結構和你的模型定義保持一致。

manage.py?知道整個 Django 項目的配置信息,比如數據庫連接配置、項目里有哪些應用等。當你運行?python manage.py migrate?時:

  • 識別配置:它會讀取項目的?settings.py?文件,了解到你使用的是哪種數據庫(是 MySQL 、PostgreSQL 還是 SQLite 等 ),以及數據庫的連接信息。這樣它就能知道要把遷移應用到哪個數據庫上。
  • 定位遷移文件:它會遍歷項目里所有應用,找到那些通過?makemigrations?命令生成的遷移文件,清楚哪些遷移還沒有應用到數據庫中。
  • 執行遷移:根據遷移文件的順序,按照正確的步驟把遷移應用到數據庫,完成數據庫結構的更新,比如創建表、修改字段等操作。

舉個超形象的例子🤩:

把 Django 項目比作一個 “魔法城堡”,manage.py?就是城堡的 “大總管”,migrate?是它的一個 “魔法指令”。

當你喊出?python manage.py migrate?,大總管就會拿著城堡的 “地圖”(配置信息),找到那些 “魔法卷軸”(遷移文件),然后按照卷軸上的指示,在城堡的 “寶物庫”(數據庫)里施展魔法,讓寶物庫的布局(數據庫結構)和城堡主人(開發者)的想法一致~是不是很好理解啦😉。

四、?Django View 里操作 Model 的代碼?

「數據入庫小劇場」🎬

整體干啥的?

把用戶 / 前端傳來的數據,裝進?Feedback?模型里,然后 “存進數據庫”?!就像把零散的樂高零件,拼成一個完整的模型,再放進展示柜~

1.?obj = Feedback()
  • 這行是?“創建一個空的 Feedback 數據對象”?~
    Feedback?是咱們定義的模型類(像個模具),obj?就是用模具做出來的?空數據盒子?,等著裝數據啦~
  • 類比:用 “Feedback 模具” 捏一個空白的小泥人,后面要給它填五官、衣服~

2.?obj.quality = data['quality']
  • 這行是?“給 obj 的 quality 字段賦值”?~
    • obj.quality:對應模型里的?quality?字段(商品質量評分)。
    • data['quality']假設?data?是前端 / 用戶傳來的字典數據(比如表單、API 請求),這里取?quality?對應的值,塞給?obj
    • 類比:給小泥人畫眼睛,眼睛的顏色從?data?里選~

3.?obj.attitude = data['attitude']
  • 同理!給?obj?的?attitude?字段(客服態度評分)賦值~
  • 繼續給小泥人畫嘴巴,嘴巴的形狀從?data?里拿~

4.?obj.speed = data['speed']
  • 給?obj?的?speed?字段(物流速度評分)賦值~
  • 給小泥人穿衣服,衣服的樣式從?data?里挑~

5.?obj.text = data['text']
  • 給?obj?的?text?字段(評論內容)賦值~
  • 給小泥人寫名字,名字內容從?data?里取~

6.?obj.anonymous = data['anonymous']
  • 給?obj?的?anonymous?字段(是否匿名)賦值~
  • 決定小泥人要不要戴 “匿名面具”,面具狀態從?data?里拿~

7.?obj.save()?# 入庫
  • 這行是?“把 obj 存進數據庫”?!
    前面給?obj?填了所有字段,現在調用?save()?方法,Django 就會幫我們把這個?obj?轉換成?數據庫的一條記錄?,永久保存~
  • 類比:把拼好的樂高模型、畫好的小泥人,放進 “數據庫展示柜” 里啦!

小總結(劇情回顧)

用?Feedback()?造一個空數據盒子?obj?

→ 從?data?里把數據一個個塞進?obj?的字段里

→ ?調用?save()?把?obj?存進數據庫~

五、Django Admin 關聯 Model 的完整流程?

讓你的模型在后臺 “可視化管理”~ 就像給模型辦一張 “后臺通行證”🎫

核心目的

Django Admin 是 Django 自帶的?可視化后臺管理工具?!把?Model?注冊到 Admin 后,就能在后臺頁面里?直觀地增刪改查數據?,不用寫 SQL 或自己做頁面~

比如你做了個?Feedback?模型(存用戶反饋),注冊到 Admin 后,就能在后臺像用 Excel 一樣管理這些數據啦!

注冊 Model 到 Admin 的步驟

1. 準備工作:確保 App 已加入項目

在項目的?settings.py?里,你的 App(比如?beifan?)要在?INSTALLED_APPS?里~ 否則 Django 找不到你的模型!

INSTALLED_APPS = [...'yifei',  # 你的 App 名稱...
]

2. 寫 Admin 注冊代碼(關鍵!)

在你的 App 目錄下(比如?beifan/admin.py?),寫下面的代碼:

from django.contrib import admin
from .models import Feedback  # 導入你的模型# 方式1:裝飾器注冊(推薦!)
@admin.register(Feedback)
class FeedbackAdmin(admin.ModelAdmin):# 這里可以定制后臺顯示的樣子,比如列表顯示哪些字段、搜索框、過濾條件等list_display = ('quality', 'attitude', 'speed', 'text', 'anonymous')  # 列表頁顯示的字段search_fields = ('text',)  # 搜索框,搜評論內容list_filter = ('anonymous',)  # 過濾條件,按是否匿名篩# 方式2:傳統注冊(和裝飾器選一種即可)
# admin.site.register(Feedback, FeedbackAdmin)

代碼拆解

  • @admin.register(Feedback):這是個?裝飾器?,作用是 “把?Feedback?模型交給?FeedbackAdmin?管理”~
  • class FeedbackAdmin(admin.ModelAdmin):繼承?admin.ModelAdmin?,可以定制后臺的顯示、操作邏輯。
    • list_display:后臺列表頁顯示哪些字段(像表格的列)。
    • search_fields:加個搜索框,搜哪些字段。
    • list_filter:側邊欄加過濾條件,方便篩數據。

3. 運行開發服務器,登錄后臺
  • 啟動服務器:python manage.py runserver
  • 訪問后臺:瀏覽器打開?http://127.0.0.1:8000/admin?,用超級用戶(superuser)登錄(沒有的話用?python manage.py createsuperuser?創建)。

4. 享受可視化管理!

登錄后,左邊側邊欄會出現你的?Feedback?模型~ 點進去就能:

  • 點?Add?按鈕 → 像填表單一樣新增數據!
  • 列表頁能看到所有數據,還能搜索、過濾~
  • 點每條數據 → 編輯、刪除都可以!

Django Admin 界面:

  • 左邊 YIFEI分組下有?Feed backs?→ 說明?Feedback?模型已成功注冊!
  • 綠色提示?The feedback "Feedback object (4)" was added successfully.?→ 剛新增了一條數據,成功入庫~
  • 列表里的?Feedback object (4)?→ 是一條數據,因為沒定制?__str__?方法,默認顯示?模型名 object (ID)?。可以在模型里加一行讓它更友好:
class Feedback(models.Model):# 你的字段...def __str__(self):return f"反饋{self.id}:{self.text[:10]}"  # 顯示 ID 和評論前10個字

進階定制(可選玩)

想讓后臺更炫酷?可以繼續加這些配置:

@admin.register(Feedback)
class FeedbackAdmin(admin.ModelAdmin):list_display = ('quality', 'attitude', 'speed', 'text', 'anonymous', 'created_time')list_per_page = 20  # 每頁顯示20條readonly_fields = ('created_time',)  # 某些字段只讀(比如自動生成的時間)fieldsets = (  # 分組顯示編輯頁的字段('評分信息', {'fields': ('quality', 'attitude', 'speed')}),('評論信息', {'fields': ('text', 'anonymous')}),)

這樣后臺編輯頁面會分組顯示字段,更清晰!

總結流程

  1. 確保 App 在?INSTALLED_APPS?→
  2. ?在?admin.py?用?@admin.register?注冊模型 + 定制顯示 →?
  3. 啟動服務器,登錄后臺 →
  4. 愉快地增刪改查!

整個過程就像:給你的模型辦一張 “后臺 VIP 卡”?,讓它能在 Django Admin 里被可視化管理🎉

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/web/91730.shtml
繁體地址,請注明出處:http://hk.pswp.cn/web/91730.shtml
英文地址,請注明出處:http://en.pswp.cn/web/91730.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

深入 Go 底層原理(四):GMP 模型深度解析

1. 引言在上一篇文章中,我們宏觀地了解了 Go 的調度策略。現在,我們將深入到構成這個調度系統的三大核心組件:G、M、P。理解 GMP 模型是徹底搞懂 Go 并發調度原理的關鍵。本文將詳細解析 G、M、P 各自的職責以及它們之間是如何協同工作的。2.…

AI賦能測試:技術變革與應用展望

AI 在測試中的應用:技術賦能與未來展望 目錄 AI 在測試中的應用:技術賦能與未來展望 1. 引言 1.1 測試在軟件開發中的重要性 1.2 AI 技術如何改變傳統測試模式 1.3 文章結構概述 2. AI 在測試中的核心應用場景 2.1 自動化測試優化 2.1.1 智能測…

Mujoco(MuJoCo,全稱Multi - Joint dynamics with Contact)一種高性能的物理引擎

Mujoco(MuJoCo,全稱Multi - Joint dynamics with Contact)是一種高性能的物理引擎,主要用于模擬多體動力學系統,廣泛應用于機器人仿真、運動學研究、人工智能等領域。以下是關于Mujoco仿真的一些詳細介紹: …

winform-窗體應用的功能介紹(部分)

1--Point實現在窗口(Form)中一個按鈕(控件)的固定位置(所在位置)一個按鈕(控件)的位置一般是固定的,另一個按鈕在窗口中位置是隨機產生的Location屬性:Location new Point(X,Y);在C#的Winform應用程序里,Button控件的鼠標懸標懸浮事件是不存在內置延遲時間的。當鼠標指針進入按…

最新Windows11系統鏡像,23H2 64位ISO鏡像

Windows 11 主要分為 Consumer Editions(消費者版)和 Business Editions(商業版)兩大類別 。消費者版主要面向家庭和個人用戶,商業版則側重于企業和商業用戶。這兩大類別中存在部分重疊的版本,比如專業版和…

linux基本系統服務——DNS服務

一、DNS域名解析原理DNS&#xff0c;Domain Name System&#xff0c;域名系統&#xff1a;在互聯網中由大量域名解析服務器共同提供的一整套關于“域名 <--> IP地址”信息查詢的數據系統!!!! C/S架構&#xff1a;DNS服務端監聽UDP 53端口&#xff08;處理客戶端查詢&…

數據處理和統計分析——08 apply自定義函數

1 apply()函數 1.1 apply()函數簡介 Pandas提供了很多數據處理的API&#xff0c;但當提供的API不能滿足需求的時候&#xff0c;需要自己編寫數據處理函數, 這個時候可以使用apply()函數&#xff1b;apply()函數可以接收一個自定義函數&#xff0c;可以將DataFrame的行或列數據傳…

C++冰箱管理實戰代碼

基于C++的冰箱管理實例 以下是一些基于C++的冰箱管理實例示例,涵蓋不同功能場景,每個示例聚焦特定實現點,代碼可直接擴展或整合到項目中。 示例1:基礎冰箱類定義 class Refrigerator { private:int capacity;std::vector<std::string> items; public:Refrigerator(…

【Python】【數據分析】Python 數據分析與可視化:全面指南

目錄1. 環境準備2. 數據處理與清洗2.1 導入數據2.2 數據清洗示例&#xff1a;處理缺失值示例&#xff1a;處理異常值2.3 數據轉換3. 數據分析3.1 描述性統計3.2 分組分析示例&#xff1a;按年齡分組計算工資的平均值3.3 時間序列分析4. 數據可視化4.1 基本繪圖示例&#xff1a;…

【AI】AIService(基本使用與指令定制)

【AI】AIService(基本使用與指令定制) 文章目錄【AI】AIService(基本使用與指令定制)1. 簡介2. AIService2.1 引入依賴2.2 編寫AIService接口2.3 測試代碼3. 指令定制3.1 系統提示詞3.2 用戶提示詞1. 簡介 AIService可以被視為應用程序服務層的一個組件&#xff0c;提供對應的…

AAAI趕稿后的心得

總結 已經第三次和老師們一起趕稿了&#xff0c;但是還是紕漏重重&#xff0c;每次都被我的垃圾寫作給嚇到。每次都手忙腳亂找不到重點&#xff0c;唉&#xff0c;我大概這輩子都成為不了郭老師&#xff1a; 自己把故事先捋清楚&#xff1a; 所有的東西都要抽象出來&#xff0c…

書籍推薦算法研究

## 項目概述本項目是一個完整的書籍推薦系統第五版(Complete Book Recommendation System V5),采用混合推薦策略,能夠處理6種不同的用戶場景,提供智能化的書籍推薦服務。## 系統架構### 核心設計思路系統采用**混合推薦策略**,結合了以下幾種推薦算法:1. **協同過濾推薦…

工具自動生成Makefile

cmake 基礎 cmake主要是生成Makefile&#xff0c;以便工程管理&#xff0c;只需要編寫CMakeLists.txt安裝camkesudo apt install cmake 安裝cmake camke --version 查看cmake版本 sudo apt upgrade cmake 升級cmake源碼隔離 在工程文件下創建一個build文件&…

Java項目:基于SSM框架實現的校園活動資訊網管理系統【ssm+B/S架構+源碼+數據庫+畢業論文+遠程部署】

摘 要 使用舊方法對校園活動資訊進行系統化管理已經不再讓人們信賴了&#xff0c;把現在的網絡信息技術運用在校園活動資訊的管理上面可以解決許多信息管理上面的難題&#xff0c;比如處理數據時間很長&#xff0c;數據存在錯誤不能及時糾正等問題。 這次開發的校園活動資訊網…

關于echarts的性能優化考慮

作為資深前端工程師&#xff0c;在處理 ECharts 性能問題時&#xff0c;核心思路是減少渲染壓力、優化數據處理、避免不必要的計算&#xff0c;尤其在大數據量&#xff08;萬級以上&#xff09;、高頻交互或多圖表場景下&#xff0c;性能優化尤為關鍵。以下是實戰中驗證過的有效…

汽車EDI:Vitesco EDI 項目案例

Vitesco Technologies&#xff08;緯湃科技&#xff09;脫胎于大陸集團的動力總成部門&#xff0c;是一家于2021年上市的全球領先汽車技術供應商。公司專注于電動出行領域&#xff0c;提供電驅動系統、電池管理系統、功率電子及熱管理等關鍵技術解決方案。同時&#xff0c;其業…

譯|Netflix 技術博客:一個利用視覺-語言模型和主動學習高效構建視頻分類器的框架

本篇介紹了Netflix的視頻標注器&#xff08;VA&#xff09;&#xff0c;一個利用視覺-語言模型和主動學習的交互式框架。其技術亮點在于通過人機協作系統&#xff0c;結合零樣本能力和主動學習&#xff0c;引導領域專家高效標注視頻數據&#xff0c;顯著提升了模型樣本效率和平…

前端應用權限設計面面觀

目錄 1. 權限設計:前端為啥要操這份心? 2. 權限模型的“內功心法”:RBAC 和 ABAC RBAC:簡單粗暴的角色分配 ABAC:靈活但燒腦的屬性控制 3. 權限數據的“物流體系”:從后端到前端的旅程 權限數據從哪兒來? 權限數據咋存? 權限數據咋用? 4. 路由守衛:權限的“第…

Javaweb————Apache Tomcat服務器介紹及Windows,Linux,MAC三種系統搭建Apache Tomcat

&#x1f3cd;?&#x1f3cd;?&#x1f3cd;?第一部分&#xff1a;什么是服務器&#xff1f; 服務器是遠程的一個電腦,里面安裝服務器程序監聽對應的端口對外提供服務&#xff0c;可以根據用戶的請求去獲取對應的數據并返回給調用方。 &#x1f3cd;?&#x1f3cd;?&#…

winsock socket通訊為什么UDP服務器無法獲取客戶端IP?

針對VB6 Winsock開發中UDP服務器無法獲取客戶端IP的問題&#xff0c;以下是系統性排查方案&#xff1a; 一、基礎協議特性確認UDP無連接特性 Winsock的UDP協議本身是無連接的&#xff0c;需通過GetPeerName方法主動獲取對端IP&#xff0c;而非自動存儲。數據接收處理 必須在Dat…