當我編寫CakePHP應用程序時,我的一個常見任務是輸出一個SQL文件並在運行烘焙生成一些腳手架之前將其寫入數據庫。這是我在CakePHP中遇到的極少數抱怨之一 - 這樣做會將我與MySQL關聯起來,我想知道是否有更好的方法通過代碼實現它。例如,在一些框架中,我可以定義我的模型與數據類型一起使用的列等,然後通過管理界面運行命令,以根據代碼中顯示的內容「構建」數據庫。它將在任何數據庫位於框架之後執行此操作。CakePHP可以根據Model的_schema屬性生成我的數據庫表嗎?
CakePHP 2.x可以做這樣的事嗎?我想在我的Model代碼中寫出數據庫模式,並運行一個像烘焙一樣的命令來自動生成我需要的表和列。潛入菜譜文檔後,_schema attribute似乎做我想做的事:
class Post{
public $_schema = array(
'title' => array('type'=>'text'),
'description' => array('type'=>'text'),
'author' => array('type'=>'text')
);
}
但有沒有例子解釋什麼,我會從我那裏做。 _schema屬性是否有不同的用途?任何幫助,將不勝感激!
如何運行控制器烘烤命令? – Anupal
從您的控制檯目錄中運行。 –
不,永遠不要那樣做。總是從你的應用程序目錄,相對:在2.x控制檯/蛋糕。和3.x中的bin/cake(如文檔所述)。 – mark