สอน Laravel 5 : การใช้งานไฟล์ assets ต่าง ๆ ใน View

สอน-laravel-framework
สอน-laravel-framework

สอน Laravel 5 : การใช้งานไฟล์ assets ต่าง ๆ ใน View



จากบทความที่แล้ว เราได้ทำความเข้าใจเกี่ยวกับ Router ใน Laravel ซึ่งมีบทบาทที่สำคัญมาก ๆ สำหรับนักพัฒนา
ที่ต้องการพัฒนาเว็บไซต์โดยใช้ Laravel Framework อ่านกระทู้ กำหนดเส้นทางเว็บไซต์ด้วย Router ก่อนเลยครับ



View คือส่วนที่จะใช้ในการแสดงผลข้อมูลต่าง ๆ ข้อความ รูปภาพ คือหน้าตาของเว็บไซต์ โดยปกติในขั้นตอนของการทำเว็บไซต์
หลังจากออกแบบหน้าตาเว็บไซต์เสร็จ และทีมเขียนโปรแกรมส่วน front-end จัดการให้เป็นไฟล์ .css หรือ .html
เสร็จเรียบร้อยแล้ว หน้าที่ต่อไปของนักพัฒนาส่วน back-end ก็คือนำไฟล์ assets ต่าง ๆ มาจัดวางให้ถูกต้องตาม
กฏเกณฑ์ของเฟรมเวิร์คนั้น ๆ สำหรับ Laravel เราสามารถจัดวางได้ดังนี้


จัดการกับไฟล์ html

สมมุติว่าเราได้ไฟล์ home.html มา ให้เราเปลี่ยนนามสกุลเป็น home.blade.php และนำไปวางไว้ในโฟลเด้อ

resources/views/home.php

ในกรณีที่เราต้องการใช้ blade template ของ laravel ซึ่งจะทำให้เราใช้คำสั่งการแสดงผลตามกฏเกณฑ์ของ
Laravel ให้เปลี่ยนชื่อจาก home.php เป็น home.blade.php

resources/views/home.blade.php

ข้อดีของการใช้ blade template คือ laravel ได้ออกแบบเฟรมเวิร์คมาให้มีความปลอดภัยในทุก ๆ ส่วนการทำงาน
การใช้งานคำสั่งต่าง ๆ ตามที่ตัวเฟรมเวิร์คได้ออกแบบมาทำให้เว็บไซต์ของเรามีความปลอดภัยมากยิ่งขึ้น ตัวอย่างเช่น
การใช้คำสั่งแสดงข้อมูลแบบนี้ {{ $name }} แทนการใช้ echo $name เป็นการป้องกันการโจมตีแบบ XSS เพราะ
การใช้ปีกกาครอบ 2 ครั้งใน laravel หมายถึงการใช้คำสั่ง htmlentities เพื่อตรวจสอบข้อมูลก่อนว่าข้อมูลนั้น
มี syntax ของภาษาโปรแกรมติดมาด้วยไม่ ก่อนที่จะนำไปแสดงในหน้าเว็บไซต์

จัดการกับไฟล์ assets

สร้างโฟลเด้อใน public/ วางไฟล์ assets ต่าง ๆ เช่นไฟล์ image, font, css และ javascript เป็นต้น
ไว้ในโฟเด้อนั้น ตัวอย่างเช่น

public/css
public/images
public/fonts
public/js

สมมุติว่าเราได้สร้างไฟล์ main.css และวางไว้ใน public/css/main.css เราจะสามารถเรียกใช้งาน
ไฟล์ main.css ให้สามารถใช้งานได้ใน home.blade.php ได้ด้วยคำสั่ง ดังนี้


ในกรณีไฟล์อื่น ๆ ก็เช่นกันครับ เปลี่ยนเพียงชื่อ folder และ ชื่อไฟล์เท่านั้น