網站首頁 編程語言 正文
問題
Django 報錯 [2019-09-16 16:47:27,981] - Broken pipe from ('127.0.0.1', 58924)
Broken pipe from xxx 這個錯誤其實比較寬泛,比如運算量太大、耗時太長等,一定要結合實際情況分析問題。
1. admin 打開編輯頁報這個錯
1.1 相關信息
我這次是在 admin 中遇到的。我有一個模型類 A 分別關聯了另外兩個模型類 B、C,而 B、C 中大概分別有 5、10萬數據。
A 表的 admin 我是這樣寫的:
@admin.register(A)
class AAdmin(admin.ModelAdmin):
? ? list_display = (
? ? ? ? 'b', 'c',
? ? ? ? 'is_valid', 'create_time', 'update_time',
? ? )
每次打開這個表的列表頁的時候是正常的,當我要點擊某一個具體的數據進入編輯頁的時候,就會報錯。
1.2 確認錯誤
我先確認這個錯誤到底是不是這里的錯誤
嘗試打開其他的表,都是正常的,只有在這個表時出錯,而且是百分百出錯
然后看代碼,檢查模型類和 admin 代碼,也沒發(fā)現問題
不使用瀏覽器,改用 paw 訪問,大概等了 1 分鐘,出結果了,看到結果我也知道為什么了
看到這個樣子的數據,我立刻就確認這是外鍵選擇控件的數據,再看右邊的滑塊下邊顯然還有很多,一下子想起這個外鍵表有很多數據。
原來問題在這里,admin 默認的外鍵選擇控件是滑動式的,十幾萬條數據就要生成十幾萬個 HTML 標簽,就慢在這里了。
改成放大鏡?樣式的就好了
@admin.register(A)
class AAdmin(admin.ModelAdmin):
list_display = (
'b', 'c',
'is_valid', 'create_time', 'update_time',
)
raw_id_fields = ('b', 'c')
這樣就能正常訪問了。
原文鏈接:https://blog.csdn.net/lnotime/article/details/100894084
相關推薦
- 2022-05-25 pytorch?hook?鉤子函數的用法_python
- 2022-12-09 Flask自定義序列化超詳細講解_python
- 2022-12-04 詳解Golang中gcache模塊的基本使用_Golang
- 2022-09-14 Go語言中序列化與反序列化示例詳解_Golang
- 2022-10-14 sklearn.linear_model.Perceptron詳解
- 2022-08-02 C#中的延時函數sleep_C#教程
- 2022-11-04 ASP.NET?MVC使用正則表達式驗證手機號碼_實用技巧
- 2022-06-24 使用Go語言寫一個Http?Server的實現_Golang
- 最近更新
-
- window11 系統安裝 yarn
- 超詳細win安裝深度學習環(huán)境2025年最新版(
- Linux 中運行的top命令 怎么退出?
- MySQL 中decimal 的用法? 存儲小
- get 、set 、toString 方法的使
- @Resource和 @Autowired注解
- Java基礎操作-- 運算符,流程控制 Flo
- 1. Int 和Integer 的區(qū)別,Jav
- spring @retryable不生效的一種
- Spring Security之認證信息的處理
- Spring Security之認證過濾器
- Spring Security概述快速入門
- Spring Security之配置體系
- 【SpringBoot】SpringCache
- Spring Security之基于方法配置權
- redisson分布式鎖中waittime的設
- maven:解決release錯誤:Artif
- restTemplate使用總結
- Spring Security之安全異常處理
- MybatisPlus優(yōu)雅實現加密?
- Spring ioc容器與Bean的生命周期。
- 【探索SpringCloud】服務發(fā)現-Nac
- Spring Security之基于HttpR
- Redis 底層數據結構-簡單動態(tài)字符串(SD
- arthas操作spring被代理目標對象命令
- Spring中的單例模式應用詳解
- 聊聊消息隊列,發(fā)送消息的4種方式
- bootspring第三方資源配置管理
- GIT同步修改后的遠程分支