0

CakePHP は初めてなので、優しくしてください...

テーブルをループして、すべての読み取り専用フィールド (ラベルと値) を表示しようとしています。私の編集機能では、テーブルを取得します

$this->set('invoice', $this->Invoice->read(null, $id));

私の見解では、テーブル スキーマ全体をループして、フィールド名と値を fieldName: value のようなラベルとして出力したいと考えています。

Invoice Number: SVC00158
Invoice Date: 03/03/12

このテーブルには 37 のフィールドがあります。すべてを手動でコーディングする必要はありません。このような入力フィールドを取得することを知っています

echo $this->Form->input('purchaseOrderNumber');

しかし、input() メソッドの「読み取り専用」属性が見つからないようです。それが理にかなっていることを願っています。

御時間ありがとうございます。

4

3 に答える 3

1

スキーマをループして、次のように出力できます。

// assumes $result contains model data
$schema = $this->Model->schema();
foreach ($schema as $field => $attrs) {
  echo $result['Model'][$field];
}
于 2012-04-03T22:54:24.003 に答える
1

書くだけ:

<?=$this->Form->inputs();?>
于 2012-04-03T21:52:26.883 に答える
0

あなたが初心者なら、Cake Bake を調べることをお勧めします (コンソールからすべてのファイルを「焼き付ける」ことができます)。つまり、現在の db スキーマに基づいたビュー、コントローラー、およびモデルであるため、それがあなたのために行われ、スタイルを適用することさえあります。

それが役立つことを願っています

于 2012-04-04T02:14:19.240 に答える