2011-02-10 19 views
2

これは、複数の機能で使用される可能性のあるコンポーネントがある場合に、どのように機能を作成するのかに関する一般的な質問です。複数の機能と再利用不可能なコンポーネントを持つDrupal

コンテキスト(c1)がビュー(v1)をとり、フィーチャ(f1)に追加されたとします。さて、v1が他のどこかで潜在的に使用されているとしましょう。新しいフィーチャ(f2)を作成してそれを含めるとしましょう...しかし、フィーチャモジュールはあなたにオプションを与えません。私ができる唯一のことは、v1をv2にクローニングし、それをf2で使用することです。

私は近視眼であるかもしれませんが、f2にv1が必要な場合は、f2を構成する他のコンポーネントを追加してf1に入れてください...これらの2つの機能は密接に関連しているため(同じノードタイプ、役割などを含むことができる)同じビューを使用することを保証するのに十分な数(One big feature...を参照)。

私はちょうど興味があると思うビューを持つフィーチャを作成した後、同じビューを使用して別のフィーチャを作成する必要がありましたか?

+0

f2がf1に依存できない理由はありますか? – jhedstrom

+0

あなたの質問を理解しているかどうかわかりませんが、機能は相互に排他的です...機能が別の機能に依存している場合は、その機能の一部になると思います。 – nymo

+0

あなたは興味深いDrupalの質問をhttp://drupal.stackexchange.com/に移行するよう司会者に頼むことができますか? – Refineo

答えて

0

あなたの場合の最も簡単な解決策は、f1からf1への依存関係を追加して、v1が利用可能であることを確認することです。 ビューが2回定義され、フィーチャーが循環依存を作成するため、f1にv1を追加することはできません。

それ以外の場合、再利用可能なコンポーネントを作成するには、ビューを複製して、同じ機能に必要な「すべて」があることを確認する必要があります。

+0

そうです、クローンニングは私の場合に行く方法でしょう。私は、機能のために作成された新しい役割の権限を設定したいとき、別の競合に遭遇しました。たとえば、「アクセス管理メニュー」はすでに別の機能で使用されていたことが判明しました。クローンは残念なことにそこを助けません。 – nymo

+0

@nymo権限がすでに他の機能にエクスポートされている場合、それはstrongarm変数には表示されません。 すべてのロールは同じアクセス許可で定義されています。 – Artusamak

+0

permsは、強制変数リストにはなく、アクセス権のリストにあります。 – nymo

関連する問題