laravel 模型多对多,应用
laravel 模型多对多,应用,试卷 跟 区域 多对多关系
一个试卷可以发放到a b c 区域
- 创建试卷表
CREATE TABLE `exams` (`exam_id` int(11) unsigned NOT NULL AUTO_INCREMENT,`exam_title` varchar(100) NOT NULL DEFAULT '' COMMENT '标题',`created_time` int(11) NOT NULL DEFAULT '0',`updated_time` int(11) NOT NULL,PRIMARY KEY (`exam_id`) USING BTREE
- 创建区域表
CREATE TABLE `area` (`area_id` int(11) unsigned NOT NULL AUTO_INCREMENT,`area_name` varchar(100) NOT NULL DEFAULT '' COMMENT '标题',`parent_id` int(10) NOT NULL DEFAULT '0' COMMENT '父级ID\n',`created_time` int(11) NOT NULL DEFAULT '0',`updated_time` int(11) NOT NULL DEFAULT '0',PRIMARY KEY (`area_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 ROW_FORMAT=DYNAMIC;
- 创建区域跟试卷表的多对多关系表
CREATE TABLE `zt_exam_id_with_area_id` (`with_id` bigint(20) unsigned NOT NULL AUTO_INCREMENT,`exam_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '试卷id',`area_id` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '区域id',PRIMARY KEY (`with_id`) USING BTREE,KEY `exam_id_with_area_id_index` (`exam_id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci ROW_FORMAT=DYNAMIC COMMENT='试卷跟区域关联关系,多对多';
- exams 模型 简历 跟 area 多对多的关系
public function areaIds(){$DB_PREFIX = env('DB_PREFIX');return $this->belongsToMany(Area::class, 'exam_id_with_area_id', 'exam_id', 'area_id')->select(DB::raw("DISTINCT({$DB_PREFIX}area.`area_id`),`{$DB_PREFIX}area`.*"));}
. 1.通过中间表:exam_id_with_area_id 建立 试卷 跟 区域的多对多关系
- 调用 exam模型的对对多方法
$model = new exams模型()
primary_key = ”exams模型表自增主键 对应的值 如:1“
$detail = $model->find($primary_key)
$detail->areaIds->toArray();
返回试卷为1:对应可以发放的试卷信息列表
$detail->areaIds->toArray(); 转为 具体的 demo sql:
select * from area as a inner join exam_id_with_area_id wi on a.area_id=wi.area_id where exam_id=1
相关文章:
laravel 模型多对多,应用
laravel 模型多对多,应用,试卷 跟 区域 多对多关系 一个试卷可以发放到a b c 区域 创建试卷表 CREATE TABLE exams (exam_id int(11) unsigned NOT NULL AUTO_INCREMENT,exam_title varchar(100) NOT NULL DEFAULT COMMENT 标题,created_time int(11…...
嵌入式学习35-网络通信UDP聊天及TCP
题目:基于UDP实现直播间聊天的功能 需求: 软件划分为用户客户端和主播服务端两个软件client.c和server.c 用户客户端负责: 1.接收用户的昵称 2.接收用户输入的信息,能够将信息发送给服务端 3.接收服…...
Python:if条件判断语句
注意:本文引用自专业人工智能社区Venus AI 更多AI知识请参考原站 ([www.aideeplearning.cn]) 内容简介 比较运算符和关系运算符: 本文将介绍Python中常见的比较运算符,如 (等于)、! 和 <&…...

git 命令怎么回退到某个特定的 commit 并将其推送到远程仓库?
问题 不小心把提交的名称写错提交上远程仓库了,这里应该是 【029】的,这个时候我们想回到【028】这一个提交记录,然后再重新提交【029】到远程仓库,该怎么处理。 解决 1、首先我们找到【028】这条记录的提交 hash,右…...
Python中如何操作数据库?
Python中如何操作数据库? 在Python中操作数据库通常涉及到使用数据库驱动程序或ORM(对象关系映射)库。下面是一些常见的步骤和工具,用于在Python中操作数据库: 1. 选择数据库和驱动程序 首先,…...

【智能算法】蜻蜓算法(DA)原理及实现
目录 1.背景2.算法原理2.1算法思想2.2算法过程 3.代码实现4.参考文献 1.背景 2016年,Mirjalili受到蜻蜓静态和动态集群行为启发,提出了蜻蜓算法(Dragonfly algorithm, DA)。 2.算法原理 2.1算法思想 蜻蜓集群有两种行为目的:狩猎…...
用A*算法求解八数码问题
用A*算法求解八数码问题 实现两种启发函数实现A*算法测试 实现两种启发函数 采取两种策略实现启发函数: 策略1:不在目标位置的数字个数策略2:曼哈顿距离(将数字直接移动到对应位置的步数总数) # 策略1: 不在目标位置…...

分布式之Ribbon使用以及原理
Ribbon使用以及原理 1、负载均衡的两种方式 服务器端负载均衡 传统的方式前端发送请求会到我们的的nginx上去,nginx作为反向代理,然后路由给后端的服务器,由于负载均衡算法是nginx提供的,而nginx是部署到服务器端的,所…...
android JNI float *转MutableList
data class Test(var data:MutableList<Float> )JNIEXPORT void JNICALL Java_NativeUtils_assignFloatArrayToHealth(JNIEnv *env, jclass clazz, jobject obj, jfloatArray cData) {jclass objClass env->GetObjectClass(obj);// 获取 Test类中的 data 属性jfieldI…...

chatgpt与人类有何不同?
ChatGPT和人类之间存在多个显著的差异。 首先,ChatGPT是一种基于人工智能技术的计算机程序,通过机器学习和自然语言处理等技术,从大量的数据中获取知识并生成语言输出。它主要依赖于算法和数据进行工作,能够迅速处理和检索信息&a…...

论文笔记:Evaluating the Performance of Large Language Models on GAOKAO Benchmark
1 论文思路 采用zero-shot prompting的方式,将试题转化为ChatGPT的输入 对于数学题,将公式转化为latex输入 主观题由专业教师打分 2 数据 2010~2022年,一共13年间的全国A卷和全国B卷 3 结论 3.1 不同模型的zeroshot 高考总分 3.2 各科主…...
MySQL 数据库查询与数据操作:使用 ORDER BY 排序和 DELETE 删除记录
使用 ORDER BY 进行排序 使用 ORDER BY 语句按升序或降序对结果进行排序。 ORDER BY 关键字默认按升序排序。要按降序排序结果,使用 DESC 关键字。 示例按名称按字母顺序排序结果: import mysql.connectormydb mysql.connector.connect(host"l…...

数据结构入门(3)2.链表接口实现
目录 前言 头文件 动态申请一个结点 单链表打印 单链表尾插 单链表的头插 单链表的尾删 单链表头删 单链表查找 单链表在pos位置之后插入x 单链表删除pos位置之后的值 在pos的前面插入 删除pos位置 销毁顺序表 前言 本文将介绍链表常见的功能的实现 头文件 #…...

vscode中解决驱动编写的时候static int __init chrdev_init()报错的问题
目录 错误出错原因解决方法 错误 在入口函数上,出现 expected a ; 这样的提示 出错原因 缺少了 __KERNEL __ 宏定义 解决方法 补上__KERNEL__宏定义 具体做法:在vscode中按下ctrlshiftp ,输入:C/C:Edit Configurations࿰…...
fastgpt本地详细部署以及配置
目录 一、Docker部署1、docker安装2、docker启动3、添加用户到 docker 组:4、验证 Docker 安装:二、one_api 本地部署1、linux系统部署2、windows系统部署三、向量模型部署(m3e)四、chatglm2模型本地部署五、fastgpt模型本地部署1、下载配置文件2、文件配置--docker-compos…...
【故障分类】基于注意力机制的卷积神经网络结合双向长短记忆神经网络CNN-BiLSTM-attention实现数据分类附matlab代码
摘要: ntion机制加权 4. 加权后的特征进行分类 需求分析 本文旨在实现一个通用的数据分类模型,可应用于不同领域的数据分类任务。 设计方案 设计一个CNN网络结构,提取输入数据的特征 将特征序列输入到BiLSTM网络,进行时序建模…...

vue接入百度地图获取经纬度
通过城市名称和城市中心经纬度来获取当前所在地图,当前经纬度中心获取可以通过后端获取 静态文件包,替换baidu.html中的ak值,ak值通过百度地图官方网站申请 申请:百度地图API申请步骤 - 知乎 代码示例文件: 链接&a…...

交流负载箱的特点和优势有哪些?
交流负载箱广泛应用于电力系统、新能源、轨道交通、航空航天等领域。它具有以下特点和优势: 1. 灵活性高:交流负载箱可以根据实际需求,调整输出电流、电压、功率等参数,以满足不同场景下的测试需求。同时,它还可以实现…...
Java线程锁之Lock的使用
Lock 的使用 Lock 是java 1.5 中引入的线程同步工具,它主要用于多线程下共享资源的控制。本质上Lock 仅仅是一个接口, 可以通过显式定义同步锁对象来实现同步,能够提供比synchronized 更广泛的锁定操作,并支持多个相关的 Lock接…...

简站wordpress主题看上去差不多 实际大不一样
有人说简站wordpress主题,都差不多嘛。我表示无语。表面看上去是差不多的,实际的细节是不一样的。 下面以编号:JZP4431和编号:JZP4878这两个主题为例子来讲一下,简站wordpress主题,在细节方面的不一样之处…...
OpenLayers 可视化之热力图
注:当前使用的是 ol 5.3.0 版本,天地图使用的key请到天地图官网申请,并替换为自己的key 热力图(Heatmap)又叫热点图,是一种通过特殊高亮显示事物密度分布、变化趋势的数据可视化技术。采用颜色的深浅来显示…...

蓝牙 BLE 扫描面试题大全(2):进阶面试题与实战演练
前文覆盖了 BLE 扫描的基础概念与经典问题蓝牙 BLE 扫描面试题大全(1):从基础到实战的深度解析-CSDN博客,但实际面试中,企业更关注候选人对复杂场景的应对能力(如多设备并发扫描、低功耗与高发现率的平衡)和前沿技术的…...
postgresql|数据库|只读用户的创建和删除(备忘)
CREATE USER read_only WITH PASSWORD 密码 -- 连接到xxx数据库 \c xxx -- 授予对xxx数据库的只读权限 GRANT CONNECT ON DATABASE xxx TO read_only; GRANT USAGE ON SCHEMA public TO read_only; GRANT SELECT ON ALL TABLES IN SCHEMA public TO read_only; GRANT EXECUTE O…...
linux 下常用变更-8
1、删除普通用户 查询用户初始UID和GIDls -l /home/ ###家目录中查看UID cat /etc/group ###此文件查看GID删除用户1.编辑文件 /etc/passwd 找到对应的行,YW343:x:0:0::/home/YW343:/bin/bash 2.将标红的位置修改为用户对应初始UID和GID: YW3…...

涂鸦T5AI手搓语音、emoji、otto机器人从入门到实战
“🤖手搓TuyaAI语音指令 😍秒变表情包大师,让萌系Otto机器人🔥玩出智能新花样!开整!” 🤖 Otto机器人 → 直接点明主体 手搓TuyaAI语音 → 强调 自主编程/自定义 语音控制(TuyaAI…...

CMake 从 GitHub 下载第三方库并使用
有时我们希望直接使用 GitHub 上的开源库,而不想手动下载、编译和安装。 可以利用 CMake 提供的 FetchContent 模块来实现自动下载、构建和链接第三方库。 FetchContent 命令官方文档✅ 示例代码 我们将以 fmt 这个流行的格式化库为例,演示如何: 使用 FetchContent 从 GitH…...

NLP学习路线图(二十三):长短期记忆网络(LSTM)
在自然语言处理(NLP)领域,我们时刻面临着处理序列数据的核心挑战。无论是理解句子的结构、分析文本的情感,还是实现语言的翻译,都需要模型能够捕捉词语之间依时序产生的复杂依赖关系。传统的神经网络结构在处理这种序列依赖时显得力不从心,而循环神经网络(RNN) 曾被视为…...

IT供电系统绝缘监测及故障定位解决方案
随着新能源的快速发展,光伏电站、储能系统及充电设备已广泛应用于现代能源网络。在光伏领域,IT供电系统凭借其持续供电性好、安全性高等优势成为光伏首选,但在长期运行中,例如老化、潮湿、隐裂、机械损伤等问题会影响光伏板绝缘层…...

用docker来安装部署freeswitch记录
今天刚才测试一个callcenter的项目,所以尝试安装freeswitch 1、使用轩辕镜像 - 中国开发者首选的专业 Docker 镜像加速服务平台 编辑下面/etc/docker/daemon.json文件为 {"registry-mirrors": ["https://docker.xuanyuan.me"] }同时可以进入轩…...

使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台
🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...