2016-11-11 55 views
1

我正在製作一個採購訂單系統,將採購訂單導出爲PDF,但我需要在上面顯示來自買方和賣方的數據。 我想有2個DetailViews並排,每個頁面寬度的50%。 有可能嗎?到目前爲止,我還沒有發現任何有關這方面的信息,而我的CSS技能也很低。 感謝您的任何信息。Yii2兩個DetailView並排

回答

2

可以unse引導電網 鑑於你可以訂貨量大的的DetailView兩種分離的自舉列

<div class="col-sm-6 col-md-6 col-lg-6" > 

    <?= DetailView::widget([ 
     'model' => $modelBuyer, 
     ...... 



    ?> 
    </div> 
    <div class="col-sm-6 col-md-6 col-lg-6" > 

    <?= DetailView::widget([ 
     'model' => $modelSeller, 
     ...... 



    ?> 
    </div> 

在控制器簡單地將兩個模型在渲染

 return $this->render('your_view', [ 
     'modelBuyer' => $modelBuyer, 
     'modelSeller' => $modelSeller, 
    ]); 
+0

感謝,它的工作原理,但是當我通過視圖卡提克的MPDF它仍然顯示detailviews一個在另一個之下,但這是另外一個問題,我想。謝謝! –

+0

那麼這意味着我的答案是正確的..對於PDF請確保您傳遞/使用PDF的視圖具有相同的結構..對於我所知道的kartik mpdf分配給$ content一個renderPartial視圖.check this – scaisEdge

1

我使用卡爾蒂克mpdf的mpdf包裝。我注意到kv-mpdf-bootstrap.min.css沒有將「col-sm-6」定義爲它在bootstrap.css中的50%。由於文檔表明mpdf css覆蓋了bootstrap,我發現類「col-xs-5」指定了41.6666%,這適合我的輸出要求,並允許我顯示兩個相鄰的細節視圖。

<form class="form-inline"> 
<div class="form-group">  
    <div class="col-xs-5"> 
     <p><b>Bill To</b></p> 
     <div style="border: 1px solid grey; padding-left: 10px; padding-right: 10px; padding-top: 5px; padding-bottom: 5px; width:200px"> 
      <?= DetailView::widget([ 
       'model' => $model, 
       'bootstrap' => false, 
       //'condensed'=>true, 
       //'striped' => false, 
       //'bordered' => true, 
       'labelColOptions' => ['hidden' => true], 
       'attributes' => [ 
         'company', 
         'billStreetAddress', 
         [ 
          'attribute' => 'billStreetAddress2', 
          'visible' => (!empty($model->billStreetAddress2)), 
         ], 
         'billCity', 
         'billPostalcode' 
         ] 
        ]) 
      ?> 
     </div> 
    </div> 

    <div class="col-xs-5" > 
     <p><b>Ship To</b></p> 
     <div style="border: 1px solid grey; padding-left: 10px; padding-right: 10px; padding-top: 5px; padding-bottom: 5px; width:200px"> 
      <?= DetailView::widget([ 
       'model' => $model, 
       'bootstrap' => false, 
       'labelColOptions' => ['hidden' => true], 
       'attributes' => [ 
         'company', 
         'shipStreetAddress', 
         [ 
          'attribute' => 'shipStreetAddress2', 
          'visible' => (!empty($model->billStreetAddress2)), 
         ], 
         'shipCity', 
         'shipPostalcode' 
         ] 
        ]) 
      ?> 
     </div> 
    </div> 
</div>