Menu

Thursday, December 26, 2019

[Laravel - Blade Template] การใช้งาน Loops ประเภทต่างๆ
[Laravel - Blade Template] How to Use Each Loop Types

For Loop

@for ($i = 0; $i < 10; $i++)
    The current value is {{ $i }}
@endfor

ForEach Loop

@foreach ($users as $user)
    This is user {{ $user->name }}
@endforeach

ForElse Loop - ForEach with handling for empty inputs

@forelse ($users as $user)
    This is user {{ $user->name }}
@empty
    No users
@endforelse

[Laravel - Blade Template] การตรวจสอบเงื่อนไขใน Blade Template
[Laravel - Blade Template] How to Use Conditional Statement

If Statement

@if (count($record) > 0)

@elseif (count($record) < 0)

@else

@endif

Unless Statement

@unless (count($record)< 0)

@endunless

[Laravel - Blade Template] การตรวจสอบการเข้าใช้งานและการตรวจสอบสิทธิ์การใช้งาน
[Laravel - Blade Template] Authentication and Authorization

การตรวจสอบการเข้าใช้งาน 

มี 2 แบบดังนี้
  • ตรวจสอบว่า user ได้เข้าสู่ระบบแล้ว
  • @auth
    
    @else
    
    @endauth
    
  • ตรวจสอบว่า user ยังไม่ได้เข้าสู่ระบบแล้ว
  • @guest
    
    @else
    
    @endguest
    

[Laravel - Blade Template] การสร้าง Layout และการ Extend Layout
[Laravel - Blade Template] How to Create and Extend Layout

การสร้าง Layout

การสร้าง Layout เป็นการสร้างเว็บเพจด้วย HTML เช่นเดียวกับหน้าเว็บทั่วไป แต่แทนค่าส่วนต่างๆที่จะใช้โดย child view ด้วย directives ซึ่งมี directives ที่เกี่ยวกับ Layout ดังนี้
  • @section ใช้ประกาศ section ในส่วนของเนื้อหา
  • @show ใช้ประกาศ section และใช้แสดงเนื้อหาของ section นั้น
  • @yield ใช้แสดงเนื้อหาของ section ที่ระบุ
ตัวอย่าง เช่น
@section('sidebar')
    This is the master sidebar.
@show

<div class="container">
    @yield('content')
</div>

Wednesday, December 18, 2019

[Docker] การใช้ Docker สำหรับทำ Host เว็บไซต์หลายเว็บบน server เครื่องเดียว
[Docker] How to Use Docker to Host Multiple Websites in One Server

การใช้ Server เพียงเครื่องเดียวในการ host หลายเว็บไซต์ เราจำเป็นต้องใช้ Reverse Proxy

ในที่นี้เราจะใช้ NGINX Proxy ในการจัดการ Proxy ให้เรา โดยมีวิธีการติดตั้งดังนี้
  1. สร้าง docker network
  2. docker network create nginx-proxy
    
  3. สร้างไฟล์ docker-compose.yml โดยใช้ไฟล์ตั้งต้นจาก https://github.com/jwilder/nginx-proxy/blob/master/docker-compose.yml
  4. เพิ่ม code ข้างล่าง ใน docker-compose.yml ของ nginx-proxy
  5. networks:
      default:
        external:
          name: nginx-proxy
    
  6. รัน nginx-proxy ด้วยคำสั่งดังนี้
  7. docker-compose up -d