我有3个数据库表:用户,评论计划和约会。
用户可以保留许多计划,并且许多用户可以保留计划,因此,基本上,约会表是我关联实体,用于连接用户和评论时间表表格
在我安装的Laravel Voyager中,约会表的状态列被标记为已付款/尚未付款
现在,每当管理员将状态更改为 PAID 时,我都希望从预约时间表中的广告位列 strong>表格应减少1或减少1,以从字面上标记用户已成功为评论计划支付了自己的广告位
我可以知道如何或在哪里添加这样的代码,以便当Laravel Voyager更新约会表时,我还可以更新评论时间表表吗?
非常感谢您!
答案 0 :(得分:2)
实现此特定方案的典型方法是通过覆盖模型,您可以在模型中实现逻辑,我假设这是App \ ScheduleAppointments:
namespace App;
use Illuminate\Database\Eloquent\Model;
class ScheduleAppointments extends Model
{
//Your model logic
//
//
//
//
/**
* OVERRIDE Boot Method
*/
protected static function boot()
{
parent::boot();
static::updating(function ($appointment) {
if($appointment->status == 'PAID'){
$appointment->slot -=1;
}
});
}
}