ข้ามไปที่เนื้อหาหลัก

การใช้ CGridView ในการทำ Data List สำหรับแสดงรายการข้อมูลจาก Database

บ่อยครั้งที่ต้องเขียนการแสดงรายการข้อมูลต่างๆ รายชื่อผู้ใช้ระบบ, รายชื่อสินค้า, รายชื่อประเภทสินค้า ฯลฯ ในรูปแบบซ้ำๆ เดิมๆ ซึ่งบางครั้งก็มีส่วนของการค้นหาข้อมูล หรือ เงื่อนไขการกรองข้อมูล ที่ไม่เหมือนกัน ยกตัวอย่าง เช่น การกรองรายชื่อผู้ใช้ที่ยืนยันอีเมล สำหรับ Yii ได้เพิ่มเครื่องมือในการเรียกข้อมูลมาแสดงแบบง่ายๆ ด้วย CGridview

ตัวอย่างที่ 1
//===============================================================
// Controller
//===============================================================

// ดึงข้อมูลผู้ใช้จากฐานข้อมูล
$model = new User();

// เอาข้อมูลที่ Query มาอัดลง CActiveDataProvider
$dataProvider = new CActiveDataProvider('Post', array(
    'pagination'=>array(
        'pageSize' => 10,
    ),
));

// ส่งตัวแปรไปยังส่วนของ View
$this->render('user', array('dataProvider ' => $dataProvider ))

//===============================================================
// View
//===============================================================

$this->widget('zii.widgets.grid.CGridView', array(
    'dataProvider'=> $dataProvider,
    'columns'=>array(
        array(
            'name' => 'title',
            'htmlOptions' => array(
                'width' => '100',
                'style' => 'text-align: center;',
            ),
        ),
        array(
            'name' => 'content',
            'htmlOptions' => array(
                'width' => '100',
                'style' => 'text-align: center;',
            ),
        ),
    ),
));

ซึ่งมีข้อสังเกตว่า การที่เราจะใช้ CGridview ได้จำเป็นจะต้องสร้างกล่องมารองรับข้อมูลที่เรา Query มาเสมอ จากนั้นเราจึงจะนำตัวแปรนั้น มาใช้ในการจัดวางตามรูปแบบของ CGridview ได้

ความคิดเห็น

โพสต์ยอดนิยมจากบล็อกนี้

การเพิ่ม Font ภาษาไทยอื่นๆ เข้าไปใช้งานใน MPDF

เนื่องมาจากผมได้มีโอกาสจับงานที่ต้องแปลงหน้าเว็บให้เป็น PDF ลองๆ หาข้อมูลก็ไปเจอเจ้าตัวนี้ MPDF  ซึ่งจริงๆ แล้วก็มีให้ใช้งานอีกหลายๆ ตัว สาเหตุที่เลือกใช้งานตัวนี้เพราะมัน ค่อนข้างจะติดตั้ง และใช้งานง่าย และยังสามารถอ้างอิง CSS เข้ามาช่วยจัดหน้าตาใน PDF ได้อีกด้วย ซึ่งผลที่ได้เพี้ยนไปจากตัวจริงไม่มากครับ แต่ที่ทำให้เลือกใช้งานเพราะการเพิ่มฟ้อนท์ภาษาไทย เข้าไปนั้นค่อนข้างง่ายครับ เลยจะขอมาแนะนำดังนี้

การเขียน Force download ด้วย PHP

การทำ Force download ด้วย PHP นั้น ไม่ไช่เรื่องใหม่อะไร มีการเขียนโค้ดด้วยลักษณะนี้อยู่บ่อยๆ แต่ผมต้องนำมาแปะเป็นทริคเล็กน้อยกันตัวเองลืมครับ ประโยชน์ของมันคือในกรณีที่เราไม่สามารถเข้าไปจัดการ Apache config ได้เราสามารถใช้วิธีนี้แทนได้

ปลดล็อคความสามารถให้กับ Sublime Text ตอนที่ 1

นานมาแล้วที่ผมเคยใช้ Dreamweaver ในการพัฒนาเว็บไซต์ตั้งแต่ CS 3 จนกระทั่งถึง CS 6 จนผมได้มาพบ Text Editor ที่ทรงพลังตัวหนึงเข้าและเกิดความประทับใจเป็นอย่างมาก จึงลองเปิดเปลี่ยนมาใช้มันดู ถ้าบอกตามความจริงแล้ว ผมเพียงแต่ใช้ตามเทรนน่ะครับ แบบเห็นคนเค้าใช้กันก็ลองใช้ดู แต่ที่ได้เห็นกับตาจริงๆ ก็คือ การโหลดโปรแกรมที่ไวในตอนเริ่ม ก่อนจะเกริ่นต่อไป ผมขอออกตัวนะครับ ว่าไม่ได้ไช่พวกคลั่ง  Sublime Text หรือจะมาบอกว่าดีกว่าตัวอื่นๆ แค่จะมานำเสนอความสามารถที่ซ่อนอยู่ สำหรับเพื่อนๆ ที่ลองใช้แล้วไม่เข้าใจว่ามันดียังไง .. เพราะความจริงก่อนหน้านั้นผมก็ใช้ Editpus หรือแม้แต่ Eclipse มาบ้างซึ่งก็ใช้ตามสถานการณ์ไม่ได้เจาะจงว่าต้อง Sublime อย่างเดียว .. สำหรับคนที่ใช้ Dreamweaver ก็อย่ากังวลครับ ไม่ได้มาบอกว่าใครที่ใช้ไม่โปร อันนี้ไม่เกี่ยวนะครับ ออกตัวไว้ให้รับทราบกันก่อน