2010-07-01 55 views

回答

2

您可以加載有問題的模式,並從該視圖(在我看來,是一個可怕的想法)中訪問它的方式,或者你可以在你的控制器動作中的「設置」它:

// In the controller action that renders the view 
$this->set('current_id',$this->ModelName->id); 

// Access it this way in the view/layout: 
<?php echo $current_id; ?> 

您也可以使用ajax獲取當前的記錄ID,但這聽起來不像是對您有益的東西。

好運

2

使用$這 - >數據隱藏[ 'MODELNAME'] [ '身份證']視圖

0

2.3以來,只要你有$這個 - >形式 - >( '字段名');您可以可靠地使用$ this-> Form-> value('ModelName.fieldname')作爲表單中字段的值。渲染視圖時,就像html輸入標籤根據控制器中使用的模型獲取值並在$ this-> Form-create('ModelName')中引用該值,渲染$ this-> Form->值時('ModelName.fieldname')有一個值。

在控制器中,$ this-> request-> data ['ModelName']被設置爲CakePhp中模型數據的數組,其中['id']指向id字段的值。

$this->Form->create('ModelName'); 
$this->Form->input('id'); 
$this->Form->end(); 

對應於控制器邏輯其中$這 - >請求 - >數據[「MODELNAME」]與至少「ID」,取決於從數據庫中讀取的數據獲取的關聯數組值=>一些標識。

請注意,當您使用$ this-> Form-> value()來檢索表單數據時,它將在屏幕最初由控制器呈現時起作用,但當屏幕再次呈現時可能會失敗,因爲模型驗證在模型定義中使用函數的規則失敗。使用$ this-> Form-> hidden('fieldName');使用$ this-> Form-> hidden('fieldName');爲了確保$ this-> Form-> value()對於更嚴格的模型驗證邏輯是可靠的。在多次模型驗證迭代中將數據保存在$ this-> request-> data ['ModelName']中。