0

私はDrupal7にいて、Drupalルートフォルダー内にカスタムスクリプトを実装しています。node_load(1234)次に、とを使用してノードを呼び出そうとしていますnode_save($node)DELETEこの2つの方法の間で、いくつかのレコード(いくつかのDB行)を試しています。しかし、私はそれを私が見つけた方法で動作させることはできません。

シナリオは次のようになります。

$node = node_load($nid);
..
.. Step 1. Some node updates like: $node->title = "New Title!";
.. Step 2. Some row DELETIONS
..
node_save($node);

その後、動作しStep 2.ていません
Step 2.次のような行削除メソッドが含まれる場合があります。

$deleted_row = db_delete('some_table')
          ->condition('nid', $nid)
          ->execute();
[or]
db_query("DELETE FROM {some_table} WHERE nid = %d", $nid);

だから私の質問は:

  • Drupalは、ロードされたフィールドとそれに関連するすべてのフィールド(行)をnode_loadロックしてから解放しますか?nodenode_save
  • 単純なDB行を削除するための可能な方法はありますか(後node_loadに呼び出されます)?

任意の提案をお願いします。

4

1 に答える 1

0

誰も答えなかった。しかし、私は自分で答えが「いいえ、ロックされません」であることに気づきました。

于 2012-10-11T13:06:14.623 に答える