我對(例如)名爲Message的模型有一個控制器操作。這非常簡單,並且允許系統記錄關於預訂發送的消息(模型稱爲預訂)。控制器發送電子郵件並將電子郵件的內容記錄到消息表中。一旦完成,我需要減少可用預訂的數量。cakephp saveField遞減或替代
$this->loadModel('Booking');
$this->Booking->id = $bookingID;
$this->Booking->saveField('booking_allotment', 'booking_allotment - 1');
上面的代碼是我到目前爲止,但它不起作用。而不是減少分配,它將它設置爲0.如果我硬編碼一個數字,它將用該硬編碼數字更新。
這個問題其實有兩個部分。首先,我從閱讀文檔和研究中獲得的解決方案比我需要的更加複雜。我明白,通過包括...
$this->loadModel('Booking');
...我將運行我不需要以及它根本不工作的表之間的所有關係。
如果我不使用蛋糕,UPDATE查詢將會非常簡單。是否有更簡單的替代方案可以起作用?或者,如果沒有,任何人都可以幫助我實現我需要做的事情?我正在使用cakePHP 2.3
如果你明白你正在破壞你的關係 - 那你爲什麼要這麼做? – pudelhund
你想用'booking_allotment - 1''實現什麼?您是否嘗試減少在booking_allotment字段中設置的值? – pudelhund