解决relationship的同时存储数据
解决relationship的同时存储数据
可能是在引用model的时候少了一些内容,导致无法传递进数据库,但是另一个函数可以做到保存入数据库,我不知道后端那个内容该怎么写,我需要看一下Laravel和filamentv3之间的关系。
我得知我写的只是检索,真正传递不是这个。
多对多什么意思
我的数据表A的每条数据都有B的多条数据 B的每条只能属于一条A的数据是一对多关系。
其中一个实体可以与多个另一实体相关联,反之亦然。才是多对多。
我找到报错原因了 是 ->multiple(),这个只能实现多对多关系。我错了,tags确实是多对多关系。
多对多关系对数据库有要求的
两个表是多对多关系 这两个表字段怎么设定
一般需要第三方表来设置外键
sqlyog怎么设置外键
右键可以设置外键,但是需要满足以下条件
- 数据不一致性:外键约束要求
tags_id
列的值必须存在于laravel
.tags
表的id
列中。如果在执行外键约束创建之前,copy_writing_tags
表中已经存在不匹配的数据,就会触发这个错误。您需要确保copy_writing_tags
表中的每个tags_id
值都存在于laravel
.tags
表的id
列中。 - 数据类型不匹配:
tags_id
列的数据类型必须与laravel
.tags
表的id
列的数据类型完全匹配,包括长度和字符集。请确保两列的数据类型一致。 - 索引问题:外键约束通常要求目标表的列(
laravel
.tags
表的id
列)上存在索引。确保laravel
.tags
表的id
列上存在索引。 - 表引擎不支持外键:如果
laravel
.copy_writing_tags
表使用的是不支持外键约束的存储引擎,如 MyISAM,您无法添加外键约束。在这种情况下,考虑将表的存储引擎更改为支持外键的引擎,如 InnoDB。 - 表结构问题:确保表
laravel
.tags
存在,表名和列名拼写正确。
还是不行BelongsToMany应该还有其他设置才能拿到数据
我给表AB设置了外键 多对多 我在创建A表的时候把B表的数据
数据库没问题字段
多选情况下返回了不知道什么没法被识别吗
难道是没有返回json数组?
外国人回答了我的问题了。
A表和B表外键了一个中间表 存储数据的时候一些数据会存储到中间表 那tags需要删除 问题衣架解决了。