当前位置: 首页 > news >正文

django根据时间(年月日)动态修改表名--方法一

方法一:
第一步:在models创建一个类,里边存放数据表中需要的字段,如下

class TemplateModel(models.Model):NowTime = models.CharField(max_length=5)name = models.CharFiedld(max_length=5)class Meta:abstract = True  # 基础类设置为抽象模型,不会生成实际数据库表

第二步:
在models.py创建一个方法,也可以写在views.py,由于我需要的时间是202436,3表示月,6表示日,所以将月和日的格式转换了一下
module: 这是一个特殊属性,表示类所属的模块名称。在这里设置为 name,意味着新创建的类所在的模块将与当前执行该代码的模块相同。

‘Meta’: type(‘Meta’, (object,), {‘db_table’: table_name, ‘managed’: False}):

这部分是在创建一个嵌套的类 Meta,它继承自 object 类。
Meta 类常常在ORM(如Django ORM或其他Python ORM框架)中用来存储模型级别的元数据信息。
‘db_table’: 这是一个字段,用于指定数据库中的表名,这里将其设置为变量 table_name 的值。
‘managed’: False:在某些ORM框架中,这意味着该模型由外部系统管理(非ORM框架自身),即ORM不会自动处理该模型相关的数据库迁移和同步操作。
因此,整个 attrs 字典的作用是构建一个类定义,其中包含了一个描述数据库表结构的内部类 Meta,并指定了新类所属的模块名称,这些属性会被用于构造一个符合特定需求的新模型类

**def create_model_for_date(date):# 获取当前日期时间对象today = datetime.today()current_date = datetime.now()month = str(current_date.month)day = str(current_date.day)//拼接表名table_name = f'table{current_date.year}{month}{day}'attrs = {'__module__': __name__,'Meta': type('Meta', (object,), {'db_table': table_name, 'managed': False}),}model_class = type(f'DailyData_{date}', (TemplateModel,), attrs)return model_class**

第三步:我们在views.py中操作,我们获取当前时间作为第二步方法的参数,然后执行django的查询语句,由于我数据表中日期格式是varchar,我将日期转换一下,并进行排序取第一条。

	today = datetime.today()TodayModel = create_model_for_date(today)data = TodayModel.objects.all()sorted_data = sorted(data, key=lambda x: datetime.strptime(x.NowTime, '%Y/%m/%d %H:%M:%S'), reverse=True)latest_entry = sorted_data[0]

第四步:前端页面,接收views.py传来的数据,也就是第三步获得的数据,在前端页面js显示,我将input标签的name和value设置为和数据库字段名

function update_frame3(){$.ajax({url: '/aaa/update_frame3/',type: 'GET',dataType: 'json',success: function(response) {response.data.forEach(function(item) {//遍历对象item的所有可枚举属性,每次循环将当前属性名赋值给变量keyfor (var key in item) {// 检查该属性是否为item对象自身的属性if (item.hasOwnProperty(key)) {// 将值设置到表单中var inputElement = document.getElementById(key);if (inputElement) {inputElement.value = item[key];}}}});},});}

相关文章:

django根据时间(年月日)动态修改表名--方法一

方法一: 第一步:在models创建一个类,里边存放数据表中需要的字段,如下 class TemplateModel(models.Model):NowTime models.CharField(max_length5)name models.CharFiedld(max_length5)class Meta:abstract True # 基础类设…...

实现基本的登录功能

一、登录功能的前端处理过程 1、导入项目所需的图片和CSS等静态文件 参考代码存放client节点的/opt/code目录下 执行如下命令: [rootclient ~]# cp -r /opt/code/kongguan_web/src/assets/* /root/kongguan_web/src/assets/ 将参考代码中的css、icon、images等文…...

Java线程池实现原理及其在美团业务中的实践

随着计算机行业的飞速发展,摩尔定律逐渐失效,多核CPU成为主流。使用多线程并行计算逐渐成为开发人员提升服务器性能的基本武器。 J.U.C提供的线程池:ThreadPoolExecutor类,帮助开发人员管理线程并方便地执行并行任务。了解并合理…...

让AI给你写代码(四)—— 初步利用LangChain Agent根据输入生成,保存,执行

要进一步提升智能编码助手的效率,我觉得需要做到两点 1) 进一步让主人聚焦于设计输入以及结果验证的循环 2) 进一步让智能编码助手聚焦于代码实现和程序流程(保存、打开,修订、执行、合并…) 正好接触到LLM…...

Flutter does not exist

Flutter does not exist 原因:Generated.config 配置文件内路径缺失 原因:Flutter SDK缺失 通过配置文件查到Flutter SDK在本地的存放位置FLUTTER_FRAMEWORK_DIR/Users/haijunyan/Documents/flutter/bin/cache/artifacts/engine/ios 真机所需&#xf…...

AIX上安装gcc和g++

AIX的iso镜像中没有gcc的软件包,需要我们自己下载,我们可以在 Index of /download/rpmdb/deplists/aix72 下载对应gcc和g版本的依赖文件deps 我们使用的是4.9.4版本的软件包 我们首先安装gcc,在http://www.oss4aix.org/download/everythi…...

js实现扫描线填色算法使用canvas展示

算法原理 扫描线填色算法的基本思想是:用水平扫描线从上到下扫描由点线段构成的多段构成的多边形。每根扫描线与多边形各边产生一系列交点。将这些交点按照x坐标进行分类,将分类后的交点成对取出,作为两个端点,以所填的色彩画水平…...

考研模拟面试-题目【攻略】

考研模拟面试-题目【攻略】 前言版权推荐考研模拟面试-题目前面的问题通用问题专业题数据结构计算机网络操作系统数据库网络安全 手写题数据结构操作系统计算机网络 代码题基础代码题其他代码题 后面的问题补充题目 最后 前言 2023-10-19 12:00:57 以下内容源自《考研模拟面试…...

Frostmourne - Elasticsearch源日志告警配置

简介 配置Frostmourne 接入Elasticsearch源进行日志匹配告警,并静默规则,告警消息发送到企业微信,告警信息使用Markdown。 部署安装教程查看: https://songxwn.com/frostmourne_install ELK 安装教程:https://songx…...

GPT出现Too many requests in 1 hour. Try again later.

换节点 这个就不用多说了,你都可以上GPT帐号了,哈…… 清除cooki 然后退出账号,重新登录即可...

python爬虫实战——小红书

目录 1、博主页面分析 2、在控制台预先获取所有作品页的URL 3、在 Python 中读入该文件并做准备工作 4、处理图文类型作品 5、处理视频类型作品 6、异常访问而被中断的现象 7、完整参考代码 任务:在 win 环境下,利用 Python、webdriver、JavaS…...

Linux信号机制

目录 一、信号的概念 二、定时器 1. alarm函数 2. setitimer函数 3.signal和sigaction函数 三、使用SIGCHLD信号实现回收子进程 一、信号的概念 概念:信号是在软件层次上对中断机制的一种模拟,是一种异步通信方式 。所有信号的产生及处理全部都是由内…...

区块链技术中的共识机制算法:以权益证明(PoS)为例

引言: 在区块链技术的演进过程中,共识机制算法扮演着至关重要的角色。除了广为人知的工作量证明(PoW)外,权益证明(Proof of Stake,PoS)也是近年来备受关注的一种共识算法。 …...

19113133262(微信同号)【征稿进行时|见刊、检索快速稳定】2024年区块链、物联网与复合材料与国际学术会议 (ICBITC 2024)

【征稿进行时|见刊、检索快速稳定】2024年区块链、物联网与复合材料与国际学术会议 (ICBITC 2024) 大会主题: (主题包括但不限于, 更多主题请咨询会务组苏老师) 区块链: 区块链技术和系统 分布式一致性算法和协议 块链性能 信息储存系统 区块链可扩展性 区块…...

Doris:使用表函数explode实现array字段列转行

文章目录 使用场景相关知识点介绍explodesplit_by_stringlateral view 具体实现和SQLlateral view explode列转行SPLIT_BY_STRING拆分字符串为数组element_at获取数据创建视图 使用场景 我们的大数据数据库,由clickhouse换成了doris我们有一张路口指标表&#xff0…...

原生php单元测试示例

下载phpunit.phar https://phpunit.de/getting-started/phpunit-9.html 官网 然后win点击这里下载 新建目录 这里目录可以作为参考&#xff0c;然后放在根目录下 新建一个示例类 <?phpdeclare(strict_types1);namespace Hjj\DesignPatterns\Creational\Hello;class He…...

计算机毕业设计-springboot+vue前后端分离电竞社交平台管理系统部分成果分享

4.5系统结构设计 本系统使用的角色主要有系统管理员、顾客、接单员&#xff0c;本系统为后台管理系统&#xff0c;游客用户可以经过账号注册&#xff0c;管理员审核通过后&#xff0c;用账号密码登录系统&#xff0c;查看后台首页&#xff0c;模块管理&#xff08;顾客信息&am…...

Stable Diffusion 详解

整体目标 文本生成图片&#xff1b;文本图片生成图片 网络结构 CLIP的文本编码器和图片生成器组成图像生成器&#xff0c;输入是噪声经过UNet得到图像特征&#xff0c;最后解码得到图像 前向扩散 模型直接预测图片难度比较大&#xff0c;所有让模型预测噪音然后输入-噪音…...

Go函数全景:从基础到高阶的深度探索

目录 一、Go函数基础1.1 函数定义和声明基础函数结构返回值类型和命名返回值 1.2 参数传递方式值传递引用传递 二、Go特殊函数类型2.1 变参函数定义和使用变参变参的限制 2.2 匿名函数与Lambda表达式何为匿名函数Lambda表达式的使用场景 2.3 延迟调用函数&#xff08;defer&…...

探秘Nutch:揭秘开源搜索引擎的工作原理与无限应用可能(一)

本系列文章简介&#xff1a; 本系列文章将带领大家深入探索Nutch的世界&#xff0c;从其基本概念和架构开始&#xff0c;逐步深入到爬虫、索引和查询等关键环节。通过了解Nutch的工作原理&#xff0c;大家将能够更好地理解搜索引擎背后的原理&#xff0c;并有能力利用Nutch构建…...

开源工具技术解析与实践指南:突破游戏性能限制的完整方案

开源工具技术解析与实践指南&#xff1a;突破游戏性能限制的完整方案 【免费下载链接】genshin-fps-unlock unlocks the 60 fps cap 项目地址: https://gitcode.com/gh_mirrors/ge/genshin-fps-unlock 一、问题溯源&#xff1a;帧率限制背后的技术债务分析 当高端显卡在…...

2026上海紧固件专业展观察:12.9级螺栓为何成为高端制造核心紧固方案?

2026第十六届上海紧固件专业展&#xff08;Fastener Expo Shanghai 2026&#xff09;将于6月24日至26日在上海国家会展中心举办。作为紧固件行业的重要展示窗口&#xff0c;本届展会将集中呈现高强度紧固件的发展趋势&#xff0c;其中12.9级螺栓已成为当前制造业升级的重要标志…...

5个关键步骤:OpenCore Legacy Patcher旧Mac设备系统升级全攻略

5个关键步骤&#xff1a;OpenCore Legacy Patcher旧Mac设备系统升级全攻略 【免费下载链接】OpenCore-Legacy-Patcher Experience macOS just like before 项目地址: https://gitcode.com/GitHub_Trending/op/OpenCore-Legacy-Patcher 随着苹果公司对旧款Mac设备的系统支…...

告别格式枷锁:ncmdumpGUI让音乐自由播放变得触手可及

告别格式枷锁&#xff1a;ncmdumpGUI让音乐自由播放变得触手可及 【免费下载链接】ncmdumpGUI C#版本网易云音乐ncm文件格式转换&#xff0c;Windows图形界面版本 项目地址: https://gitcode.com/gh_mirrors/nc/ncmdumpGUI 开篇痛点直击&#xff1a;那些被NCM格式困住的…...

Qwen3-TTS多语言语音合成实测:一键部署,生成10种语言的逼真语音

Qwen3-TTS多语言语音合成实测&#xff1a;一键部署&#xff0c;生成10种语言的逼真语音 1. 开篇&#xff1a;语音合成新体验 想象一下&#xff0c;只需输入一段文字&#xff0c;就能让电脑用10种不同语言"开口说话"&#xff0c;而且声音自然得几乎分辨不出是机器生…...

Translategemma-27b-it与OCR结合:图片翻译完整流程

Translategemma-27b-it与OCR结合&#xff1a;图片翻译完整流程 1. 引言 想象一下这样的场景&#xff1a;你在异国旅行时看到一份精美的菜单&#xff0c;却因为语言障碍而不知道点什么&#xff1b;或者在研究国外产品时&#xff0c;标签上的说明文字完全看不懂。传统的翻译工具…...

抖音无水印视频批量下载全攻略:技术解析与实战指南

抖音无水印视频批量下载全攻略&#xff1a;技术解析与实战指南 【免费下载链接】douyin-downloader A practical Douyin downloader for both single-item and profile batch downloads, with progress display, retries, SQLite deduplication, and browser fallback support.…...

Vue3前端集成Gemma-3-12B-IT:构建智能聊天界面

Vue3前端集成Gemma-3-12B-IT&#xff1a;构建智能聊天界面 用最简单的方式&#xff0c;让你的Vue3项目拥有智能对话能力 1. 为什么要在Vue3中集成智能聊天功能 现在很多网站和应用都需要智能对话功能&#xff0c;不管是客服系统、学习助手还是内容创作工具。Gemma-3-12B-IT作为…...

Phi-4-mini-reasoning一文详解:专为多步推理设计的开源大模型实战

Phi-4-mini-reasoning一文详解&#xff1a;专为多步推理设计的开源大模型实战 1. 模型概述 Phi-4-mini-reasoning是一款专注于推理任务的文本生成模型&#xff0c;特别擅长处理需要多步分析的复杂问题。与通用聊天模型不同&#xff0c;它被设计用来解决数学题、逻辑题等需要逐…...

内容营销对 SEO 有什么影响

<h3 id"seo">内容营销对 SEO 有什么影响</h3> <h4 id"">引言</h4> <p>在当今数字化时代&#xff0c;搜索引擎优化&#xff08;SEO&#xff09;和内容营销被广泛认为是网站流量和业务增长的关键驱动因素。许多企业在网站建设…...