私は Cakephp 2.1 と Wamp を使用していますが、すべて問題ありません。1 つのモデル (プロジェクト) から値 (id フィールドではない) を取得し、それを保存するレコード (セットアップ) に割り当てる必要があります。
SetupsConstroller.php
$this->request->data['Setup']['client_id'] = $this->Setup->$projects['Project']['client_id'];
モデルのセットアップ.php
var $belongsTo = array('Client', 'User',
'Project' => array(
'className' => 'Project',
'foreignKey' => 'pr_number'
)
);
私の SetupsController では、プロジェクトを取得します。
$projects = $this->Setup->Project->find('list', array(
'order' => 'name',
'foreignKey' => 'pr_number',
'fields' => array('Project.pr_number', 'Project.name'),
'conditions' => array('pr_status' => 2)
));
したがって、セットアップを追加すると、$projects から pr_number を取得できます。
add.ctp
echo $this->Form->input('pr_number', array('label' => 'ASC Project:', 'options' => $projects));
今、私が必要としているのは、プロジェクト レコードからの別の値 (client_id) であり、保存されているセットアップ モデルの列に割り当てます。保存する直前に現在の user_id を割り当てるために行ったようなこと:
SetupsController.php (機能追加)
$this->request->data['Setup']['user_id'] = $this->Auth->user('id'); // this works fine
// Next line needs fixing, returns NULL, Don't know how to access client_id from projects model!
$this->request->data['Setup']['client_id'] = $this->Setup->$projects['Project']['client_id'];
if ($this->Setup->save($this->request->data)) { // then save
loadModule やその他の提案を試みましたが、うまくいきませんでした。
そんなに珍しくないと思いませんか?
誰でも助けることができますか?
どうもありがとう。
メキシコ、ティフアナ出身のカルロス