Ben diğer nesneler için bir kaç yabancı anahtar ilişkileri vardır cakephp nesne (SecurityPerson) var.
İşte Yutulan yabancı anahtar başvuruları için Pulldowns üretiyor ekleme / düzenleme görünümü kodu:
echo $form->input('ContractNumber');
echo $form->input('Location');
Burada model, bu nesnelere referanslar bulunuyor:
var $belongsTo = array(
'ContractNumber' => array(
'className' => 'ContractNumber',
'foreignKey' => 'contract_number_id',
'conditions' => '',
'fields' => '',
'order' => ''
),
'Location' => array(
'className' => 'Location',
'foreignKey' => 'location_id',
'conditions' => '',
'fields' => '',
'order' => ''
)
);
Ve burada add () denetleyicisi Alakalı parçası:
if (!empty($this->data)) {
$this->SecurityPerson->create();
if ($this->SecurityPerson->save($this->data)) {
$this->Session->setFlash(__('The SecurityPerson has been saved', true));
$this->redirect(array('action'=>'index'));
} else {
$this->Session->setFlash(__('The SecurityPerson could not be saved. Please, try again.', true));
}
}
$contractNumbers = $this->SecurityPerson->ContractNumber->find('list');
$locations = $this->SecurityPerson->Location->find('list');
$this->set(compact('contractNumbers', 'locations'));
Tüm ekleme ve düzenleme sayfalarındaki Pulldowns için oluşturulan HTML dahil, bana güzel görünüyor. AMA ... Sadece nulls sercurity_person satır ekledi olsun.
Herkesin kolaylıkla neler olup bittiğini görmek, ya da bana sorun giderme iyi bir başlangıç verebilir misiniz?
EDIT: What I've tried so far:
Ben SQL sorgusu bakarak denedim. Kimliği adlı yabancı anahtar için alan adları INSERT veya UPDATE deyim görünmüyor.
I've tried looking at the $data
structure. The foreign key references look like this:
[ContractNumber] => 2
[Location] => 1