私は、ユーザーがプロジェクトリクエストフォームを動的に作成できるようにする(ドロップダウン、複数選択などを含む独自のフィールドを追加する)この問題を理解しようとしています。ユーザーは、さまざまなビジネスユニットに対して複数のプロジェクトリクエストタイプ(バンドルなど)を作成する方法を必要としています。エンティティとバンドルの関係がこれに最適であると考えました。だからここに私の考えがあります:
Schema APIを使用して、ベーステーブル「プロジェクト」を定義します。Entity APIのhook_entity_info()を使用して、新しいプロジェクトについてDrupalに通知し、「プロジェクト」テーブルを指すようにします。このフックで、バンドルを定義できます-これは素晴らしいことです。しかし、ユーザーがバンドルを作成できるようにする必要があります。entity_create_bundle($ entity_type、$ bundle)呼び出しはどこにありますか?
例:
エンティティタイプ:プロジェクト(DBで定義された共通フィールドを持ち、フィールド化可能)
バンドル:ITプロジェクト、HRプロジェクト-プロジェクトの共通フィールドを共有します
project_typeテーブルには、必要な追加のグループ化(ビジネスユニットに対するプロジェクトリクエスト)が格納されます。
今、私は素晴らしいDrupal 7モジュール開発を読んでいます。第6章では、「彫刻」と「絵画」という2つのバンドルを持つエンティティ「アートワーク」を定義しています。彼らが手順を説明する方法は、追加のアートワークタイプを作成するための管理インターフェイスを構築しているようですが、これは(私が言えることから)正しくありません。この章を終えると、「絵画」または「彫刻」タイプのエンティティのみを作成できます。
ユーザーが「プロジェクト」エンティティタイプのバンドルを作成できるようにするにはどうすればよいですか?
何かが足りないのですか、それとも機能がまだありませんか?