[ UV包管理使用 ]


python uv包管理使用[https://docs.astral.sh/uv/getting-started/installation/#standalone-installer]

一. 直接使用官方推荐命令安装

curl -LsSf https://astral.sh/uv/install.sh | sh

二. 直接下载 文件

再把文件复制到这个目录下

root@iZf8zfb58x30ba21piywgxZ:/usr/local/bin# ls
uv  uvx

三. 使用

安装
uv python install 3.12
uv python install 3.11
uv 

< Read more >

[ django部署防止后台admin出现csrf ]


有时候后台admin登陆报错scrf, 就这样部署

(base) chf@chf:~/Nginx$ cat nginx-config/default.conf

# HTTP 强制跳转 HTTPS(前端)
server {
    listen 80;
    server_name frontend.chenhaifeng.top;
    return 301 https://$host$request_uri;
}

# HTTP 强制跳转 HTTPS(后端)
server {
    listen 80;
    server_name backend.chenhaifeng.top;

< Read more >

[ HAProxy代理 ]


HAProxy代理https(代理性能比nginx好, 但是不能代理静态文件)

合并nginx那种密钥(key + pem > pem)

cat frontend.chenhaifeng.top.key frontend.chenhaifeng.top.pem > /home/chf/HAProxy/certs/frontend.chenhaifeng.top.pem

cat backend.chenhaifeng.top.key backend.chenhaifeng.top.pem > /home/chf/HAProxy/certs/backend.chenhaifen

< Read more >

[ django自动事务源码解析 ]


1.启动django的时候

class WSGIHandler(base.BaseHandler):
    request_class = WSGIRequest

    def __init__(self, *args, **kwargs):
        super().__init__(*args, **kwargs)
        self.load_middleware() #加载中间件

1

2.发起请求的时候

一. 应该是WSGI服务-> 他调用了application(xxx,xxx)触发了call方法

import os

from django.core.as

< Read more >

[ django翻译功能 ]


django中使用多语言翻译

.
├── django_test
│   ├── asgi.py
│   ├── __init__.py
│   ├── settings.py
│   ├── urls.py
│   ├── views.py
│   └── wsgi.py
├── locale
│   └── zh_Hans
│       └── LC_MESSAGES
│           ├── django.mo
│           └── django.po
└── manage.py

修改4个地方

USE_I18N
LANGUAGES
LOCALE_PATHS
MIDD

< Read more >

[ django事务 ]


django的api接口事务执行顺序的解析

事务在api中的流程

遇到问题(创建了数据,使用其他线程,立马查询, 需要等api结束后才会真提交事务

解决方法: 使用on_commit注册事务提交后的回调

多线程
from django.db import transaction
transaction.on_commit(lambda: self._start_query_thread(log.id))

celery在数据库事务结束时触发任务

Django 的一个常见陷阱是立即触发任务,而不是等到 数据库事务的结束,这意味着 Celery 任务可能会运行 在所有更改都保存到数据库之前。

< Read more >

[ DeepSeek R1本地部署 ]


DeepSeek R1部署到debian,ubuntu,的无页面系统中

ollama官网

curl -fsSL https://ollama.com/install.sh | sh

使用ollama拉取并且运行(根据自己配置选择)

# 下载 1.5B 版本(适用于 CPU 及低配 GPU)
ollama run deepseek-r1:1.5b

# 下载 8B 版本
ollama run deepseek-r1:8b

# 下载 14B 版本
ollama run deepseek-r1:14b

# 下载 32B 版本
ollama run deepseek-r1:32b

# 下载 

< Read more >

[ django文件上传 ]


文件上传使用drf序列化注意事项

假如文件字段的数据是

{
    "id": 1,
    "name": test,
    "file": /media/xxxxxxx/test.txt
})

序列化器要添加context={"request": request}返回的字段信息才是 (后端域名 + 文件路径)

ser = StockItemImpWorkSerializer(instance, context={"request": request})

上下文

###########
## seri

< Read more >

[ Chf test ]


def registration_summary1():
    """逻辑基本一样,只是后面月份的数量是前面月份的基础上添加的"""
    dates = []
    values = []

    current_date = Date.today()
    # 生成过去24个月的日期列表(保持原有逻辑)
    for i in range(24):
        next_month = current_date + relativedelta(months=-i)
        dates.insert(0, n

< Read more >