1

インストーラーを作成しているので、関連付けられていない場合でも、複数の種類のデータを異なるテーブルに保存する必要があります。理想的には、これを一度に処理したいと思います。これが私がこれまでに持っているものの簡単なものです。

これが、上記のデータを保存するための準備中の私のケーキ配列です。

$initialData = array(
    array( 'Option' => array( 'name' => 'version', 'value' => '1.0.0', )),
    array( 'Option' => array( 'name' => 'non-version', 'value' => '1.0.2', )),
    array( 'User' => array( 'username' => 'skyler', 'password' => 'hi', )),
);

そして、私はそれを保存しようと試みるために以下を使用します。

$this->Option->saveMany($initialData)

これは行のみを保存し、Option行は保存しませんUser。考え?

注:これは関連データではありません。オプションとユーザーは関連付けられていませんが、同時に保存する必要があります。

4

2 に答える 2

2

1$this->Option->saveManyつのテーブルに複数のレコードを保存しているため、が機能します。ただし、ユーザーはオプションに関連付けられていないため、データをどう処理するかがわかりません。を呼び出す必要があります$this->User->save($initialData)

複数のユーザーレコードが必要な場合は、を呼び出すことができます$this->User->saveMany($initialData)

に電話することを忘れないでください$this->User->create()

于 2012-09-11T22:47:08.937 に答える
0

私は通常、データベーステーブルを作成してデータを設定するSQLスクリプトをパッケージと一緒に出荷します。

CakePHPでファイルを読み取って実行する方法の例については、Cakephpで実行されない複数のSQLクエリを参照してください。

于 2012-09-11T09:12:43.253 に答える