私は、ajaxを介して設定されたCCKタクソノミーチェックボックスのデータを直接更新するモジュールに取り組んでいます。
データベースへの保存を除いて、すべてが機能しています。次のコードを使用します。
$data = array(
'vid' => $nid,
'nid' => $nid,
'field_grouping_value' => $tid
);
drupal_write_record('content_field_grouping', $data);
'delta'フィールドの値を重複させているというエラーメッセージが表示されます。私の問題は、コードが新しいデータを書き込もうとしていることですが、デルタフィールドは自動インクリームではないジョイントキーです。
通常、私はデルタフィールドをインクリメントするだけですが、Drupalはそれを動的に処理するので、良いよりも害を及ぼすのではないかと心配しています。
http://i.stack.imgur.com/yTwoN.gif">
上の画像でnid3に別のフィールドがある場合、そのデルタフィールドの値は2になります。次に、nidが3でデルタが0のフィールドを削除します。値1と2のデルタフィールドを残す代わりに、すべて0と1にリセットされます
私が自分のサイトに損害を与えないように、この問題を解決してDrupalにデルタフィールドを動的に処理させる方法を誰かがアドバイスできるかどうか疑問に思います.....またはそれは不要ですか????