2011-06-19 117 views
2

我有現有的網站。
和我寫的新的後端(CakePHP中)不改變前端PROGRAMM使用現有的字段名稱作爲不同的名稱

是 db表具有字段名稱爲
ID
news_date
news_title
news_content不適

是否可以在cakephp模型文件中做點什麼(重新標識字段名稱) 因此我可以在控制器中使用模型
News.date
News.title
News.content

回答

2

你需要做的是設置一些在您的新聞模型非常基本的virtual fields。像這樣的東西應該適合你的需求。

public $virtualFields = array(
    'title' => 'news_title', 
    'date' => 'news_date', 
    'content' => 'news_content' 
); 

也請你幫個忙,通過檢查出其他model attributes,可以幫助你,你要設置顯示類型爲NEW_TITLE我想像。

+0

,但你不能在條件使用它們,訂購。是否有其他解決方案 – baur79

+0

http://book.cakephp.org/view/1642/Limitations-of-virtualFields – Dunhamzzz

1

由Dunhamzz說,virtualFields是一個很好的解決方案,直到你想使用這些新的字段名稱。

因爲我假設你的前端需要使用數據庫中的舊名稱,所以我會在你的模型中使用afterFind回調。
比方說,你已經得到了模型news.php:

您需要將數據庫字段重命名爲新的需要的值。然後,您可以像其他領域一樣使用這些條件。
唯一的區別是,你得到一個數組,其中所有的字段已被重命名爲您的前端字段。

有關可用回調方法的詳細信息,看看這裏:Callback Methods

相關問題