我試圖在模型中設置一個字段,因此它會在任何讀取操作中返回。我研究了虛擬領域,但他們不太正確,因爲他們基本上執行SQL查詢。以編程方式在CakePHP中設置模型中的字段
在這個例子中,我試圖返回一個值,基於一個簡單的檢查,看看用戶是否已激活帳戶或沒有。在我的模型,我想運行此功能:
public function status() {
if ($this->field('password')) {
return = 'active';
} else if ($this->Ticket->field('id')) {
return = 'pending';
} else {
return = 'inactive';
}
}
目的是通過$用戶訪問,在我看來,[「用戶」] [「狀態」],這樣我就可以應用CSS樣式等,根據結果。
但是,在設置這個$ [「用戶」] [「狀態」] =狀態之間()現在是躲避我。
而且,由於我在讀我的用戶列表不同的方法(有時分頁,或一次一個用戶),這是不是我想在我的控制設置。我希望該屬性在閱讀時只出現在模型中。要調用狀態函數在回調
嗯......這給了我一個錯誤某些原因:致命錯誤:用盡33554432個字節允許內存大小(試圖分配523800字節) –
聽起來像你有遞歸設置太高。我建議在AppModel中設置'public $ recursive = -1;',然後只在需要時才更改它(儘管我不認爲使用遞歸是個好主意 - 應該使用Containable) – Dave