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

ขั้นตอนการอัพ Laravel จาก 5.1 เป็น 5.2

ปีที่ผ่าน Laravel ได้พัฒนา framework อย่างต่อเนื่อง และโตอย่างรวดเร็วทำให้นักพัฒนาเว็บที่ใช้งานเจ้า framework ตัวนี้ต้องคอยตื่นตัวตลอดเวลา หลายๆ คนมีคำถามว่าถ้าไม่อัพได้มั้ย? คำตอบคือ ได้ แต่แน่นอน คุณจะพลาดระบบใหม่ๆ หรือการแก้ไขช่องโหว่ต่างๆ ที่เคยมีมาในเวอร์ชันก่อนๆ หลายๆ คนเลือกที่จะไม่อัพเกรดเพราะกลัวว่าจะทำให้ระบบทั้งหมดรวน เพราะแต่ละเวอร์ชันมีการเปลี่ยนแปลงเยอะมาก ฟังชันบางตัวก็ยกไปทำให้เราต้องมานั่งแก้ไขกันเยอะเลยทีเดียว


ถึงแม้จะมีข้อเสีย และบางครั้งอาจจะไม่คุ้มกับเวลาที่เสียไป ในโลกของนักพัฒนาคงไม่มีใครอยากล้าหลัง อย่างไรก็ดี จะอัพ หรือไม่นั้น? เจ้าของโปรเจ็ค เจ้าของบริษัท แต่จะเป็นคนตัดสินใจเองว่าคุ้มค่ากับเงิน และเวลาที่จะเสียไปมั้ย?

สำหรับใครที่ตัดสินใจได้แล้วสามารถเข้าไปอ่านต่อได้เลย กับการอัพเกรด Laravel 5.1 เป็น 5.2 จากโปรเจ็คที่พัฒนามาบ้างแล้ว



ขั้นตอนแรกที่ควรทำคือ อัพเดท Composer.json โดยการเพิ่ม
symfony/dom-crawler": "~3.0" และ "symfony/css-selector": "~3.0
ลงในส่วนของ "require-dev"

แต่อย่าเพิ่งสั่งรัน Composer install หรือ update ให้เข้าเช็ค app/config.php ที่ Github ของ Laravel
เนื่องจากในเวอร์ชันนี้มีการเปลี่ยน Auth ใหม่ ดังนั้นไฟล์ app/config.php จะไม่เหมือน 5.1

ตอนนี้เราจะยังอยู่ที่ไฟล์ app/config.php แต่เลื่อนลงไปในส่วนของ provider ให้ลบ
- Illuminate\Foundation\Providers\ArtisanServiceProvider
- Illuminate\Routing\ControllerServiceProvider

แล้วสั่งรัน Composer update

*** ตรงนี้เป็นส่วนเสริมหากใครใช้ Collective Html พอมาถึงเวอร์ชัน 5.2 ได้เปลี่ยนขั้นตอนการลงให้ใน app/config.php ให้ลบออกด้วย รวมถึงในไฟล์ composer.json ด้วยนะ

แล้วเปลี่ยนมาใช้ตัวนี้แทน เพิ่มบรรทัดนี้แทนที่ html ตัวเก่า
composer.json
- "laravelcollective/html": "5.1.*"

app/config.php
Provider
- Collective\Html\HtmlServiceProvider::class

Alias
- 'Form' => Collective\Html\FormFacade::class
- 'Html' => Collective\Html\HtmlFacade::class

แล้วสั่งรัน Composer update

ความคิดเห็น

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

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

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

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

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

มาเข้าใจ และใช้ Datatable ดึงข้อมูลแบบ Server-side ด้วย PHP, MySQL กันเถอะ

มีช่วงหนึงผมเคยนำ datatable มาพัฒนาในงานแต่เกิดปัญหาเนื่องจากมีข้อมูลขนาดใหญ่ ทำให้เกิดการโหลดในครั้งแรกที่โหลดหน้าเพจนั้นๆ เนื่องจากผมใช้ Ajax ในการโหลดข้อมูลทั้งหมดมาในครั้งเดียวด้วยจำนวนข้อมูล 1000 ขึ้น ซึ่งตอนนั้นผมคิดว่าการทำ preload น่าจะช่วยได้ แต่ว่าถ้า user เกิดเผลอไปกด refesh หรือแก้ไขข้อมูลเวลากลับมาที่หน้าข้อมูลก็ต้องโหลดใหม่อีก ทำให้ผมเลิกใช้ datatable ไปเลย เพราะคิดว่ามันคงไม่เหมาะ แต่ในความจริงแล้ว datatable ก็ได้มีสิ่งที่มาแก้ในจุดนั้นได้ ซึ่งเรียกว่า server-side โดยการที่อนุญาตให้เรา query ข้อมูลออกมาก่อนแล้วส่งมาให้ datatable อ่านข้อมูลในจำนวนที่น้อยลง หลักการก็เหมือนๆ กับบทความการทำสร้าง XML จากข้อมูลขนาดใหญ่นั่นแหละครับ แต่มีเงื่อนไขเพียงแต่ว่า ต้อง Filter และส่งข้อมูลออกมาในรูปแบบที่ตรงตามหลักของ datatable เท่านั้น ( บางครั้งเวลาเข้าไปอ่าน Document หรือดู Example จะงงๆ ว่าอะไรเยอะแยะ ) โดยวันนี้จะมาแนะนำการใช้งานแบบง่ายๆ กันเลย :D