ユーザーが作成したテンプレート番号を選択したビューを作成しようとすると、次のページに移動して、そのテンプレート用に作成したフィールドが吐き出されます。SQL ステートメントで実行したいことを実行していますが、これらのcustom
フィールドdefault_values
を入力ボックスに出力するフォームを取得する方法がわかりません
請求書 テーブルにはid sender_id receiver_id template_id
フィールドが含まれています テーブルには含まれていますid name default_value active template_id
invoices hambt fields
fields hambt invoices
結合テーブルは fields_invoices であり、含まれていますid invoice_id field_id entered value
請求書テーブルとフィールド テーブルから ID を取得して結合テーブルに保存する方法がわかりません
public function create($id)
{
$this->set('title_for_layout', 'Create Invoice');
$this->set('stylesheet_used', 'homestyle');
$this->set('image_used', 'eBOXLogoHome.png');
$this->layout='home_layout';
if (!is_numeric($id)) throw new BadMethodCallException('I need an ID');
$this->Invoice->id = $id;
if (!$this->Invoice->exists()) throw new NotFoundException('Invalid ID');
$this->set('invoice_id',$id);
$names = $this->Invoice->find('list',array(
'fields'=>array('template_id'),
'conditions'=>array('id'=>$id)));
$fields = $this->Field->find('list', array(
'conditions'=>array(
'template_id'=>$names)));
$this->set('field',$fields);
$this->set('name',$names);
if(empty($this->data)){
$this->data= $this->Field->read($fields);
}
else{
if(($this->Field->save($this->data)))
{
$this->Session->setFlash('The field has been updated');
$this->redirect(array('controller'=>'invoices', 'action'=>'index'));
}
}
}
これがビューです
<?php echo $this->Form->create('fields_invoices'); ?>
<?php foreach ($field as $fields): ?>
<?php echo $this->Form->Input($fields); ?>
<?php endforeach ;?>
<?php echo $this->Form->End('Submit');?>
ビューを適切にコーディングして取得default_variables
し、fields
テーブル内のを に出力する方法がわかりませんinput boxes
。どんな助けでも大歓迎です