收藏的帖子被用户删除了,这说明帖子表没有这个帖子了,但是收藏表还有数据,我用关联的查出来是空的,然而我要的结果是显示“该帖子已被删除”
php代码:
$collect = db('collect')->where('user_id',session('user_data.id'))
->alias('a')->join('content b','a.content_id=b.id')
->paginate(10);
帖子表:
收藏表:
枫叶知秋2021-04-07 17:56:29
不要物理删除,尽量逻辑删除,修改状态。
目前设计用LEFT JOIN试试
db('collect')->where('user_id',session('user_data.id'))->alias('a')->leftJoin('content b','a.content_id=b.id')->paginate(10);
查无此人2021-04-07 11:45:12
这个属于设计的问题。按理说,不应该让用户删除数据库的数据的。
就算删除,也只是把状态改为 删除,真实的数据,还存在。
如果你要做可以删除数据库里的数据,那用户删除这个帖子的时候,要把这个帖子的相关数据 都删除。
所以还是建议你, 改变帖子的状态, 当删除帖子后,另一个人查询这个帖子,提示该帖子已删除就好了。
而你是管理员,查询时,就不会因为数据丢失 而出错