2011-12-08 21 views
7

Ben Yii için yeni. Özel sayfalama uygulamak istiyorum. Çağrı cihazının görünümünü değiştirmek istiyorum. Satıcı bağlantısının etiketlerini nasıl değiştirebilirim? Bu gibi yerine varsayılan görünümnasıl yii içinde çağrı cihazı için etiketleri özelleştirebilirsiniz?

<< < 1 2 3 4 > >> 

,:

Ben bağlantılar şöyle görünmesini istediğiniz sahip olduğum verileri görüntülemek için CListView kullanıyorum

[first] [previous] 1 2 3 4 [next] [last] 

şöyle kurulabilir:

$this->widget('zii.widgets.CListView', array(
      'dataProvider' => $categoryProjects, 
      'itemView' => '_itemDetailsView',   
      'ajaxUpdate'=>false, 
     )); 

Lütfen bana nasıl söylerim? Onunla mı? Bazı yayınlar gördüm, ancak doğru bilgileri alamadım.

Şimdiden teşekkürler.

cevap

12

Sen CListView ait pager özelliğini ayarlamanız gerekir. Varsayılan olarak bu bir CLinkPager; (Bu bileşen kapsamındaki ihtiyaçlarınızı vardır) bunu değiştirmeye gerek yoktur, ama bunu yapılandırmanız gerekir:

$this->widget('zii.widgets.CListView', array(
      'dataProvider' => $categoryProjects, 
      'itemView'  => '_itemDetailsView', 
      'ajaxUpdate' => false, 
      'pager'  => array(
           'class'   => 'CLinkPager', 
           'firstPageLabel' => '<<', 
           'prevPageLabel' => '<', 
           'nextPageLabel' => '>', 
           'lastPageLabel' => '>>', 
          ), 
     )); 

Güncelleme: tüm listeye üstünde bulunan özel yapılandırma "fırında" isterseniz uygulamanızda görünümleri, sen CListView doğan yeni CustomListView bileşeni oluşturmak zorunda. Yani bu sınıfı gerekir:

Yii::import('zii.widgets.CListView'); 

class CustomListView extends CListView { 
    public function init() { 
     parent::init(); 

     $this->pager = array( 
          'class'   => 'CLinkPager', 
          'firstPageLabel' => '<<', 
          'prevPageLabel' => '<', 
          'nextPageLabel' => '>', 
          'lastPageLabel' => '>>', 
         ); 
    } 
} 

bu da dahil olmak üzere sonra, basitçe liste widget'ı yerine zii.widgets.CListView olarak CustomListView kullanabilirsiniz.

+0

Teşekkür Jon etiketler. Bunu tek bir dosyada uygulamanın bir yolu var ve tüm dosyalara otomatik olarak uygulanacak. Bu cListView'i birçok dosyada kullandım. Ayrıca sayfa numaraları için CSS'yi nerede değiştirebilirim? –

+0

@RSK: [bu tartışma] bakın (http://www.yiiframework.com/forum/index.php?/topic/26055-change-the-general-pager-css-for-all-application/) için CSS. Diğer sorununun cevabını kısa bir süre içinde güncelleyeceğim. – Jon

+0

Sayfa numaralarını 5 ile nasıl sınırlarım? 10 sayfa numaralarını gösteren varsayılan ayarlar. Bu genel $ maxButtonCount = 5 denedim; ama bu benim için çalışmıyor. Baska öneri? Ayrıca bu <1 ... 9 10 11 12 .... 30 8> 10 sayfalar gösteriyor çünkü .. –

İlgili konular