从用户端将播放列表设为 public 或私有
Make playlists either public or private from user side
我有两个表playlists
和playlist_songs
在database.Recently播放列表是由权限管理的,但现在我想允许用户制作自己的播放列表,播放列表可以是public
或 private
取决于用户的选择。那么,我如何为此设计架构,如何使 public-playlists
对其他用户可见,以及如何对其他用户隐藏 private-playlists
?请给我建议,我们将不胜感激。
您可以通过在 table playlists
中添加标记字段 is_public
来实现
所以在您的数据库 table playlists
中将字段 is_public
添加为 char(1)
并且在存储播放列表时,只需根据用户选择将数据添加为 Y
或 N
在您的 table 中。
$store_array = [
// other fields
'is_public' => 'Y',
];
默认情况下,您可以为 public 设置 is_public Y
,为私有设置 N
。您可以在创建字段时在数据库中设置它。
要显示,您可以在您显示播放列表的代码中设置如下所示的条件(在网格中或我不知道您在哪里显示播放列表的任何地方)
无论您在哪里获取播放列表以向用户显示,请使用如下所示的 eloquent 以确保其他用户只能查看 public 个播放列表
$playlists = Playlist::get()->where('is_public','=','Y');
因此,通过使用此 eloquent,您将只会获得被选为 public 的播放列表。
我有两个表playlists
和playlist_songs
在database.Recently播放列表是由权限管理的,但现在我想允许用户制作自己的播放列表,播放列表可以是public
或 private
取决于用户的选择。那么,我如何为此设计架构,如何使 public-playlists
对其他用户可见,以及如何对其他用户隐藏 private-playlists
?请给我建议,我们将不胜感激。
您可以通过在 table playlists
is_public
来实现
所以在您的数据库 table playlists
is_public
添加为 char(1)
并且在存储播放列表时,只需根据用户选择将数据添加为 Y
或 N
在您的 table 中。
$store_array = [
// other fields
'is_public' => 'Y',
];
默认情况下,您可以为 public 设置 is_public Y
,为私有设置 N
。您可以在创建字段时在数据库中设置它。
要显示,您可以在您显示播放列表的代码中设置如下所示的条件(在网格中或我不知道您在哪里显示播放列表的任何地方)
无论您在哪里获取播放列表以向用户显示,请使用如下所示的 eloquent 以确保其他用户只能查看 public 个播放列表
$playlists = Playlist::get()->where('is_public','=','Y');
因此,通过使用此 eloquent,您将只会获得被选为 public 的播放列表。