2016-09-27 91 views
1

我只是想在CakePHP中3CakePHP中3查詢

Ex. $this->select('fname', 'lname', 'mname', 'email', 'password', 'status', 'created', 'modified'); 

在這裏,我要選擇除各個領域的選擇,除了一個領域的所有字段中選擇所有除一個字段創建和修改,因爲我的其他表有apprx 30個字段,我想選擇28個字段,並且不想在選擇函數中提及每個字段,因爲它非常耗時。

可以請您提出一個更好的方法。

回答

2

你可以只找到所有的,然後在運行時隱藏你不要有什麼需要

$model->hiddenProperties(['modified', 'created']); 
+0

**謝謝** @Alex。 –

3

你可以抓住所有可能的列從架構的刪除那些你不想有,如:

$query->select(
    array_diff($Table->schema()->columns(), ['modified', 'created']); 
); 

相關提示,請檢查以下問題詢問了取消的功能:

https://github.com/cakephp/cakephp/issues/6904

+0

**感謝** @ndm –