数据库架构:https://www.db-fiddle.com/f/rw5JvXF21oCQWZNJcMFnVj/1
我正在使用laravel 5.7。在我的项目中,https://www.db-fiddle.com/f/rw5JvXF21oCQWZNJcMFnVj/1中显示了表结构。
在模型中,我定义的关系如下。
Playlist.php
public function scheduledPlaylist()
{
return $this->hasOne(ScheduledPlaylist::class,'playlist_id','id');
}
SchedulePlaylist.php
public function schedule_playlist_tracks()
{
return $this->belongsToMany(Track::class, 'scheduled_playlist_tracks','playlist_id', 'track_id')->withPivot('index');
}
Track.php
public function scheduled_playlists()
{
return $this->belongsToMany(ScheduledPlaylist::class, 'scheduled_playlist_tracks', 'track_id', 'playlist_id')->withPivot('index');
}
我想将playlist_id
存储在schedule_playlist_tracks
表中,该表与非主键playlist_id
中的schedule_playlist
字段相同。
每当我将记录保存在表中时,它会将id
表中的schedule_playlist
另存为playlist_id
。我也尝试过将外键添加到迁移中,但是没有运气。我该如何实现?是否可以使用雄辩的关系,还是在保存记录时可以?请给我建议。任何帮助将不胜感激。