mysql - Laravel 中具有不同类型幻灯片的滑块的数据库模式
问题描述
每个滑块都有许多幻灯片,但有两种类型的幻灯片:
- 幻灯片,当我们点击它们时,会打开一个 URL
- 幻灯片,当我们单击它们时,将打开一个视频
我认为最好有一个这样的滑块表:
CREATE TABLE sliders
(
id int NOT NULL PRIMARY KEY,
title varchar(100) NOT NULL
);
然后两张像这样的幻灯片
CREATE TABLE image_slides
(
id int NOT NULL PRIMARY KEY,
title varchar(100) NOT NULL
slider_id int not null
);
CREATE TABLE url_slides
(
id int NOT NULL PRIMARY KEY,
title varchar(100) NOT NULL,
url varchar(100) NOT NULL,
slider_id int not null
);
但是我不能$slider->slides
一次用 Eloquent 获得所有类型的幻灯片(比如),因为我有
/**
* Get the SliderVideos for the Slider.
*/
public function sliderVideos()
{
return $this->hasMany(\App\SliderVideo::class);
}
/**
* Get the SliderLinks for the Slider.
*/
public function sliderLinks()
{
return $this->hasMany(\App\SliderLink::class);
}
那么更好的数据库模式是什么?
解决方案
推荐阅读
- php - 如何在jquery追加文本中保留空格和换行符
- database - 使用 binlog_format="row" 在只读副本上启用 BinLogs
- python - 如何在python中使用for循环范围内的所有数字?
- c - 递增常量变量
- firebase - Firebase 身份验证在签名的 APK 中不起作用
- visual-studio-2017 - Visual Basic 表单验证
- xml - 删除同一行标签之间的文本
- c# - JWT 令牌删除或注销
- objective-c - macOS Mojave - NSReadPixel 不工作
- python - 在 numpy 中广播对 3D 数组的操作的时间缩放