【发布时间】:2021-07-30 12:49:00
【问题描述】:
所以我的问题是我目前正在使用 lumen 开发一个宁静的 api,其想法是用户可以拥有许多列出的宠物供收养,任何登录的用户都可以将此宠物标记为保留供收养......当用户点击预约按钮,通知被发送给所有者(通过推送器和数据库通道),通知包含列出的宠物的 ID 和请求收养该宠物的用户 ID,所以所有者将看到是带有两个按钮的通知,用于批准或不批准收养请求,我的问题是从宁静的角度来看,当单击任何按钮(即批准或不批准)时,我应该一次性删除通知和预订吗?
示例:我向以下端点 /user/notifications/{id} 发送 DELETE 请求,首先我获取用户 id(谁想要采用)和列表 id,并删除预订,然后删除通知主人? DB Design
【问题讨论】:
-
我会使用数据库事务,这样您在删除多个模型时就不会遇到问题。我永远不会删除预订或通知之类的内容,我会将它们设置为例如看到、拒绝、接受任何内容并在您的正常查询中忽略它们。
-
首先感谢您的回复,但假设我想将预订设置为已完成,我调用的同一端点:/user/reservations/{id} 应该将预订状态更新为“已完成”并将通知也设置为“已看到”?