Shallow Dreamer Blog

前端实现选择文件夹保存文件

In web applications, including those built with Vue 3, downloading files typically saves them to the user’s default download directory. Due to browser security restrictions, web applications cannot...

timezone时间

在 Django 模型中,你可以使用 timezone.now 函数结合 timedelta 来设置时间字段的默认值为当前时区的当前时间的半年后。具体实现如下: from django.db import models from django.utils import timezone from datetime import timedelta def six_months_from_...

eltable合并测试

要实现只有当数据(例如 username)相同时才合并单元格,可以对 span-method 方法进行修改。以下是一个调整后的代码示例: <template> <el-table :data="tableData" :span-method="mergeRows" style="width: 100%"> <!--...

drf序列化

当您的模型以及其关联的外键模型都包含 UUID 字段时,确保这些 UUID 字段在序列化和 JSON 转换过程中正确处理非常重要。以下是一个综合的解决方案,适用于这种场景: 1. 确保序列化器正确处理 UUID 字段 为两个模型分别创建序列化器,并确保所有 UUID 字段都明确使用 UUIDField 进行序列化。 from rest_framework import serializ...

python异常处理

Python 提供了丰富的异常类,用于处理不同类型的错误和异常情况。以下是一些常见的 Python 异常类及其使用场景: 基本异常类 Exception 所有异常类的基类。通常不直接使用,而是用它的子类。 BaseException 所有异常的基类。一般不直接使用,主要用于 try 和 except 块中的广泛捕获。 ...

数据拆解

def data_reorganize_split_duplicate_row(data: List[Dict], json_list_fields: List[str]) -> List[Dict]: result = [] for row in data: # 获取所有 JSON 列表字段的最大长度 item_len = max((...

虚拟列表

为了确保滚动时元素正确显示并且性能良好,我们可以通过调整数据的管理方式和渲染逻辑,来实现虚拟滚动。这次,我们确保所有计算正确,并使用 flex 布局。以下是一个详细的实现方式,保证元素在滚动时正确显示。 更新后的代码实现 <template> <div class="container" ref="container" @scroll="onScroll"> ...

修改用户组

在 Django 中,修改用户的组权限和获取用户信息可以通过 Django 自带的认证系统来实现。下面是具体的步骤和代码示例: 修改用户的组权限 导入所需的模型 from django.contrib.auth.models import User, Group 获取用户和组对象 user = User.objects.get(username=...

contenttype实现评论

好的,让我们更详细地解释和分步骤实施使用Django的ContentType实现通用的评论系统。 1. 创建评论模型 首先,我们需要创建一个通用的评论模型。这个模型将使用ContentType和GenericForeignKey来实现与任意模型的关联。 # models.py from django.db import models from django.contrib.conten...

正则判断提取

为了处理不同的格式,我们可以使用稍微复杂一点的正则表达式来分别匹配 thru、fext 和 next 的不同模式。以下是更新后的 Python 脚本,能够根据指定格式匹配并提取信息: import re def match_and_extract_info(filename): # 定义正则表达式模式 pattern_thru = re.compile( ...