0

「コンベンション」と呼ばれるコンテンツ タイプと「コンベンション セッション」と呼ばれるコンテンツ タイプがあります。各セッションには、規則へのノード参照があります。コンベンションには「開始日」と「終了日」があり、各コンベンション セッションには単純な「開始日」があります。

ユーザーがコンベンションの完全なノード ビューを参照すると、左側にブロックが表示され、コンベンションの「開始日」と「終了日」の間に発生するコンベンション セッションのグループ化されたリストが表示されます。たとえば、2009 年 12 月 10 日から 2009 年 12 月 12 日までの「My Awesome Convention」というコンベンション ノードを見てみると、ブロックは次のようになります。

  • 木曜日 (5) - (数字は各日のコンベンションセッションの数です)
  • 金曜日 (12)
  • 土曜日 (15)

次に、ブロック内の各アイテムを、その日のすべての大会セッションを一覧表示するページ ビューにリンクさせ、ブロックを左側に配置します。それを理解することはできません。どんな助けでも大歓迎です。

4

2 に答える 2

1

ビューモジュールは、それ自体では集約SQL関数を許可しません。ただし、Views Group Byモジュールがあり、これらのカウントを集計できるはずです。

表示されているコンベンションに属するコンベンションセッションを決定することに関しては、views引数を使用してこれを行うことができるはずです。ノード参照フィールドはセッションからコンベンションを指しているため、そのフィールドを引数として追加し、 [ URLからのノードID ]オプションを使用する際にデフォルト値を渡します。

于 2009-12-14T18:28:45.417 に答える
0

サイトのコンテキストで作業したい場合、表示されているノードは少し複雑になります。よくわかりませんが、使用したいノードIDをURLから取得できる可能性があります。それ以外の場合は、他にもいくつかのオプションがあります。

  • ビューの作成者によって作成されたパネルはモジュールであり、レイアウトを変更するように設計されており、コンテキストを渡すこともできます。ただし、この場合、それを知るのはおそらく大変な作業になります。
  • 自分でブロックを作成することは、常に可能性です。ビューでは多くの人がそれを行いませんが、私の推測では、独自のモジュールを作成して実装する方がはるかに簡単ですhook_block()。ここでは、ロジックとSQLを自分で作成できます。Drupal APIとPHPをよく知らない場合、これは少し難しいでしょう。しかし、そうでなければ、これは数分で実行できるものです。
于 2009-12-12T11:28:05.410 に答える