複数の関連ノードを同時に作成できるフォームが必要です。すべてのノードに CCK フィールドが含まれます。
CCK の組み込みの検証、送信、入力ウィジェット、およびセキュリティ機能を可能な限り/実用的に使用したいと考えています。
Drupal 6 でこれを達成するための最良の方法は何ですか? 「ベストプラクティス」やドキュメントはどこにありますか?
ここに私が見ることができる3つの可能性があります。これらのいずれかが機能するかどうか、またはさらに優れたオプションがあるかどうかについてのフィードバックをお待ちしています.
1.
- コンテンツ タイプ foo の標準ノード作成フォームから始めます。
- フック form_alter を使用して、コンテンツ タイプ バーのフィールドを追加してフォームを変更します [コンテンツ タイプ バーのウィジェットを直接挿入できますか?]
- カスタム送信ハンドラーを使用して、フォームが送信されたときに bar タイプのノードを作成します [標準の cck ハンドラーを呼び出すことができますか? または、ノードオブジェクトを「手動で」構築し、独自の検証を行い、node_save を使用する必要がありますか?]
2.
- 関連するコンテンツ タイプの「通常の」ノード作成フォームを連結する新しいカスタム フォームを作成します。
- 次に、フック form_alter を使用して、必要に応じてフォームを変更します。
- 標準の cck 送信ハンドラーがノードを作成する作業を実行できるようにします。
3.
- カスタム フォームを最初から作成する
- ノードの準備、ノードの保存などを使用して、独自の送信ハンドラーでノードを作成します。
標準のノード作成フォームの再利用に関するドキュメントが見つかりましたが、同時に複数のノードを作成することについては言及されていません。
フック nodeapi とフック form_alter の使用については、Advomatic のサイトの投稿に記載されていますが、特定のメソッド descrube では、コンテンツ タイプの 1 つを「ダミー」フィールドで汚染する必要があるようです。
ご助力ありがとうございます!