2016-09-06 47 views
0

我首先感謝你閱讀我的問題。從Drupal 8的自定義塊查詢數據庫

我希望做一個數據庫查詢和顯示數據在自定義模塊在Drupal 8

我已經嘗試了不同的方法都沒有成功:

<?php 

namespace Drupal\mi_modulo\Plugin\Block; 

use Drupal\Core\Block\BlockBase; 

/** 
* Bloque que muestra una lista de productos 
* @Block(
* id = "get_products", 
* admin_label = @Translation("get productos") 
*) 
*/ 
class getProducts extends BlockBase { 
    /** 
    * {@inheritdoc} 
    */ 

    public function build() { 
     $db = \Drupal::database(); 
     $data = $db->select('products','t')->fields('t')->execute(); 

     return array(
      '#theme' => 'mi_modulo', 
      '#descripcion' => 'Lista de productos', 
      '#nodos' => $data 
     ); 
    } 
} 
+0

是否有特定的原因使用db-> select()?如果你想要的內容,你可以使用EntityTypeManager – VJamie

+0

[如何在Drupal 8中創建查詢]的可能重複(http://stackoverflow.com/questions/33944735/how-to-create-a-query-in- drupal-8) – VJamie

+0

我沒有關於drupal 8的一些概念修復使用drupal的內容類型和視圖的問題 –

回答

0

好吧,如果我理解正確的話,你想讓你的觀點進入你的街區。現在這裏有幾個選項:

  1. 您可以直接進入視圖並在那裏創建塊,然後將其放在您喜歡的位置。
  2. 如果你真的想要在自定義塊中使用它,你可以使用views_embed_view('view_name')函數。我將在下面的代碼中解釋選項2。

這會將視圖嵌入到您的塊中,並將其顯示爲您在視圖中配置它。

public function build(){ 
    return views_embed_view('name_of_your_view'); 
}