Module 1: บทนำ
- แนะนำให้รู้จัก Laravel และแนวทางการเขียนแบบ MVC
- แนะนำเว็บไซต์สำหรับอ้างอิง และเอกสารประกอบการใช้งาน
Module 2: การติดตั้ง Laravel 9 บนระบบปฏิบัติการ Windows
- การติดตั้ง PHP และปรับแต่งสภาพแวดล้อมสำหรับการทำงาน
- การติดตั้ง IDE ที่ใช้เขียนโปรแกรม เช่น VS Code, Sublime Text หรือ ATOM
- การติดตั้ง Composer
- การติดตั้ง Git
- แนะนำความสามารถและสิ่งใหม่ ๆ ใน Laravel 9
- การเริ่มต้นสร้างโปรเจ็กต์ใหม่ด้วย Laravel 9
- การตั้งค่า Virtual Hosts
- การเปิดโปรเจ็กต์ Laravel 9 ใน IDE
Module 3: การติดตั้ง Laravel 9 บนระบบปฏิบัติการ MacOS
- การติดตั้ง PHP และปรับแต่งสภาพแวดล้อมสำหรับการทำงาน
- การติดตั้ง IDE ที่ใช้เขียนโปรแกรม เช่น VS Code, Sublime Text หรือ ATOM
- การติดตั้ง Composer
- การเริ่มต้นสร้างโปรเจ็กต์ใหม่ด้วย Laravel 9
- การตั้งค่า Virtual Hosts
- การเปิดโปรเจ็กต์ Laravel 9 ใน IDE
Module 4: พื้นฐานการทำงานกับ Routes ใน Laravel 9
- แนะนำโครงสร้างของ Laravel 9
- แนะนำการสร้างและทำงานกับ Routes
- Routes แบบมีการกำหนด parameter
- Routes แบบมีการจัด Group
- การตั้งชื่อแฝงใน Routes และการนำไปใช้งาน
Module 5: พื้นฐานการทำงานกับ Controllers ใน Laravel 9
- การสร้าง Controllers
- รู้จัก Routing Controllers
- การส่งข้อมูลผ่าน Controller
- การสร้าง Resources Controller
Module 6: พื้นฐานการทำงานกับ Views ใน Laravel 9
- สร้าง Views และ ปรับแต่งการทำงาน
- การส่งข้อมูลผ่าน Views จาก Controller หรือ Routes
- การแสดงผล Asset เช่น รูปภาพ ไฟล์ต่างๆ ใน Views
Module 7: การทำงานกับ Blade Templating ใน Laravel 9
- การสร้าง Master layout template เพื่อไปใช้งานซ้ำ
- แนะนำฟีเจอร์ใหม่ๆ ใน Blade template ของ Laravel 9
Module 8: พื้นฐานการทำงานกับฐานข้อมูล (database)
- การตั้งค่าไฟล์ config ฐานข้อมูลเริ่มต้น
- รู้จักการสร้างและทำงานกับ Migration
- สร้าง Migration และลบทิ้ง
- เพิ่มคอลัมน์ในตารางที่สร้างไว้แล้วด้วย Migration
- คำสั่งเพิ่มเติมที่สำคัญใน Migration
Module 9: การเขียน Raw SQL Queries ใน Laravel 9
- การเพิ่มข้อมูลใหม่ด้วย SQL
- การอ่านข้อมูลมาแสดงผลด้วย SQL
- การแก้ไขข้อมูลด้วย SQL
- การลบข้อมูลด้วย SQL
- การกำหนดเงื่อนไขการค้นหาข้อมูลด้วย SQL
Module 10: การทำงานกับ Database Eloquent /ORM
- การอ่านข้อมูลมาใช้งาน (reading data)
- การข้อมูลโดยกำหนดเงื่อนไขการค้นหาแบบต่างๆ
- รูปแบบการค้นหาข้อมูลแบบอื่นๆ
- การเพิ่มและบันทึกข้อมูล
- การอัพเดทข้อมูลด้วย Eloquent
- การลยข้อมูลด้วย Eloquent
- การทำ Soft Deleting / Trashing
- Retrieving deleted / trashed records
- Restoring deleted / trashed records
- Deleting a record permanently
Module 11: การทำงานกับฐานข้อมูล ที่มีความสัมพันธ์ในตาราง Eloquent Relationships
- One to One relationship
- The inverse relation
- One to many relationship
- Some random tips
- Many to many relations
- Querying intermediate table
- Has many through relation
- Polymorphic relation
- Polymorphic relation the inverse
- Polymorphic relation many to many
- Polymorphic relation many to many - retrieving
- Polymorphic relation many to many - retrieving owner
Module 12: การใช้ Eloquent เขียน CRUD (สร้าง อ่าน เพิ่ม ลบ) ในฐานข้อมูลที่มีความสัมพันธ์แบบต่างๆ
- Database - Eloquent One to One Relationship CRUD
- Database - Eloquent One to Many Relationship CRUD
- Database - Eloquent Many to Many Relationship CRUD
- Database - Eloquent Polymorphic Relationship CRUD
- Database - Eloquent Polymorphic Many to Many Relationship CRUD
Module 13: การตรวจสอบฟอร์ม (Forms and Validations) ใน Laravel 9
- Setting up views and routes
- Setting the markup for create
- Setting up the controller and view
- Persisting data to database
- Reading data
- Showing individual posts and updating
- Preparing the edit view and setting up the token
- Editing records and redirecting
- Deleting
Module 14: การทำงานกับ Model ใน Laravel 9
- Dates
- Accessors
- Mutators
- Query Scope
Module 15: รู้จักและทำงานกับ Middleware
- Create a new laravel installation (challenge)
- Registering a new middleware and using it
- A more practical way to use middlewares roles, migration and relations setup
- A more practical way to use middlewares Custom method
Module 16: รู้จักและทำงานกับ Sessions ใน Laravel 9
- Setting and reading sessions
- Global session function deleting
- Flashing data
Module 17: การใช้งานฟังก์ชันส่งอีเมล์ (Sending Email / API) ใน Laravel 9
- New laravel installation
- Overview on mailgun
- Email verification
- Configuration
- Sending email
- Custom domain
Module 18: การใช้งาน Git, Github Version Control กับ Laravel 9
- Git intro
- Git Installation
- Git commands
- Branches
- Creating repositories on Github
- Git settings
- Cloning and pushing to Github
- Pull request and pulling changes
- Contributing to the project
Module 19: Authentication (ทำระบบ Login, Register) ใน Laravel 9
- Database connection and migrations
- Login creation overview
- Register creation overview
- Retrieving authenticated user data
Module 20: Realtime Dashboard ด้วย Laravel 9 เชื่อมต่อกับ Google Firebase
- Connect Laravel with Firebase Real Time Database
- What is Firebase
- Prerequisites
- How to Setup Firebase
- Generate the API Key
- Laravel Composer Require
- Firebase Database
Module 21: การเขียน API ด้วย Laravel 9
- Database, Models, Migrations, Seeders, Queries, API testing, HTTP requests
- Setting up database
- Model and migrations
- Routes and model all() method
- API testing in Postman
- Using Model::find() and mandatory/optional route parameters
- Using Model::findOrFail() and Accept header
- Making HTTP requests with Axios
- CSS Flexbox and Bootstrap utility classes
Module 22: การทำงานร่วมกับ GraphQL ใน Laravel 9
- GraphQL Basics
- The Schema Definition Language - SDL
- Types, Scalar Types and Custom Types
- Input, Enum and Interface
- Queries, Mutations and Subscriptions
Module 23: การสร้าง Blog APIs ร่วมกับการใช้งาน GraphQL
- Database Design - Blog API
- Database Implementation with Laravel - Blog APIs
- Create SDL - Blog APIs
- LightHouse Basics - Directives
- LightHouse Basics - Types Directives
- LightHouse Basics - Queries Directive
- LightHouse Basics - Mutations Directives
- LightHouse Basics - Using GraphQL Playground
- LightHouse Basics - Authorization and Authentication
Module 24: พื้นฐานการใช้งาน Vue.js Framework ร่วมกับ Laravel
- เริ่มต้นติดตั้ง Vue.js
- เรียนรู้โครงสร้างโปรเจ็กต์ของ Vue.js กับ Laravel
- เริ่มต้น
- Fallback route in Laravel
- Installing and setting up Vue Router
- HTML5 history mode in Vue Router
- Vue component registration (global/local) and Index component
- Router Link component and routing inside a Vue application
- Bootstrap, styling and Laravel Mix
- v-bind, v-bind shorthand and named Vue routes
Module 25: Vue.js พื้นฐานเพิ่มเติม
- Component , props, one way data flow, computed propertie ใน Vue.js
- Conditional rendering ใน vue.js (v-fi)
- List rendering ใน vue.js (v-else)
- รู้การใช้ Vuex จัดการ State
Module 26: Workshop การสร้างระบบตะกร้าสินค้า (Ecommerce) ร่วมกับ Vue.js
- การเตรียม Resource ต่างๆ
- การขึ้น Project Laravel ใหม่
- การติดตั้ง Vue.js เข้ามาใน Laravel
- การเขียน API สำหรับเชื่อมต่อกับฐานข้อมูล
- การเขียน Vue.js เรียกใช้งาน API
- ทดสอบทำระบตะกร้าสินค้า การ Checkout แบบ SPA ด้วย Vue.js
Module 27: Workshop การสร้าง Blog ด้วย Laravel 9
- การสร้างโปรเจ็กต์ใหม่
- การ Config ค่าเริ่มต้น
- การสร้างชุด Template
- การ Config เชื่อมต่อกับฐานข้อมูล
- การสร้างส่วนของ Post ใน Blog
- การสร้างหมวดหมู่ (Category) ของ Blog
- การสร้างและจัดการส่วนสื่อต่าง ๆ (Media) ใน blog
- การเขียนส่วน Comment ของ Blog
- ฟีเจอร์เสริมอื่นๆ เช่นการปรับแต่ง url การแบ่งหน้าเพจ การใส่รูปโปรไฟล์
Module 28: การนำโปรเจ็กต์ Laravel 9 ไปใช้งานจริงบน hosting (Deploying our app to a shared hosting account)
- แนะนำการตั้งเริ่มต้น
- SSH - WINDOWS OS
- SSH - MAC OS
- Module installation and PHP version
- Composer install
- Laravel installer
- Uploading project
- Configuring our environment file
- Our app live on the web
- Logging in
- Displaying images
- Deleting images
- Setting up production settings