1

チュートリアルとAPIを読み、コードを確認しました。しかし、実装に関しては、思ったとおりに機能しませんでした。
今のところ、学習目的で、Viewsモジュールの使用を避けようとしています。

function mymodule_menu() {
  $items['groups'] = array(
    'title' => t('Groups list'),
    'page callback' => 'mymodule_groups_overview',
    'access callback' => TRUE
  );

  return $items;
}

function mymodule_groups_overview() {
  $build = array();

  $query = db_select('og', 'og')->extend('PagerDefault');
  $query->fields('og', array('gid'));

  $result = $query
    ->limit(10)
    ->orderBy('og.gid')
    ->execute();    

  if ($result) {
    $gids = $result->fetchCol();
    $entities = og_load_multiple($gids);    
    $build = entity_view('group', $entities, 'teaser');
  }

  return $build;
}

問題は、entity_view(..)何も返さず、og_load_multiple(..)エンティティの配列を返すことですが、コンテンツもフィールドもありません。

これが機能する場合は、おそらくコントローラーをオーバーライドし、で宣言しmymodule_entity_info_alter(..)、新しいビューモード'list'を追加します。

エンティティのリストを表示するための作業コードをポケットベルと共有できますか?

PS私はグループを例にとりましたが、他のタイプのエンティティは気にしません。

4

1 に答える 1

0

entity_view の呼び出しでティーザーの代わりに「full」を使用するとどうなりますか? タイプ「グループ」のティーザーの表示モードに、実際に表示するフィールドがいくつかあることを確認しましたか?

于 2011-08-25T13:53:36.490 に答える