ตัวอย่างที่ 3ในตัวอย่างนี้จะทำการเพิ่ม Routing โดยยังเรียกใช้งานของ Controller ของตัวอย่างที่เเล้วการสร้างเเละกำหนด Routing
โดย จะกำหนด path ให้รับค่า /page/{id}-{title}.{form} ส่วนนี้ /page คือ url ที่จำเป็นต้องใส่ให้ถูก
ส่วน {id} คือ สั่งเกตุในส่วนของ

requirements:
        id: \d 

ส่วนนี้จะต้องเป็นตัวเลขเท่านั้น จะต่างกับตัวอย่างใน การสร้างเเละกำหนด Routing ตามด้วย - {title} คืออักษรหรือตัวเลขอะไรก็ได้
.{form} สังเกตุที่

  requirements:
id: \d
form: html|php

ตรงนี้เราจะบังคับให้ใส่ form ได้ เพียง html หรือ php เท่านั้น เท่านี้ยังไม่พอดูในส่วนของ

    defaults: { _controller: SitetestBundle:Default:page,form:html }

form:html คือการระบุค่า Default เข้าไปด้วยในกรณีที่ไม่ได้พิมพ์เข้าไปใน Url ป้องกันไม่ให้ Error

Bundle Controller Class Method Name
TestBundle DefaultController page


routing.yml

sitetest_homepage:
    path:     /hello
    defaults: { _controller: SitetestBundle:Default:index }
block_homepage:
    path:     /block/{name}
    defaults: { _controller: SitetestBundle:Default:block }
page_block:
    path:     /page/{id}-{title}.{form}
    defaults: { _controller: SitetestBundle:Default:page,form:html }
    requirements:
        id: \d
        form:   html|php

DefaultController.php

<?php

namespace Site\testBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;

class DefaultController extends Controller
{
    public function pageAction($id,$title,$form)
    {
        return $this->render('SitetestBundle:Default:index.html.twig',
                array(
                    'id'        => $id,
                    'title'     => $title,
                    'form'      => $form,
                ));
    }
}

index.html.twig

id = {{ id }} <br>
title = {{ title }} <br>
form = {{ form }} 

เมื่อทำการ Run ผลลัพท์คือ แบบระบุ {form}

แบบไม่ระบุ {form} จะใช้ค่า Default คือ form:html

ส่วนรายละเอียด Code ในส่วนของ Controller เเละ twig จะอธิบายในบทเรียนถัดไป

กระทู้ล่าสุดจากเว็บบอร์ด
หัวข้อกระทู้
ตอบ
เปิดดู
ล่าสุด
วิธีสมัคร Binance ง่าย ๆ ใน 3 นาที ผจญภัยในโลกของ crypto
โดย p444722 อ 02 ม.ค. 2024 11:52 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
283
อ 02 ม.ค. 2024 11:52 pm โดย p444722 View Topic วิธีสมัคร Binance ง่าย ๆ ใน 3 นาที ผจญภัยในโลกของ crypto
วิธีเปิดบัญชี Binance ขั้นตอนในการลงทุนดิจิทัล
โดย p444722 อ 02 ม.ค. 2024 11:32 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
0
281
อ 02 ม.ค. 2024 11:32 pm โดย p444722 View Topic วิธีเปิดบัญชี Binance ขั้นตอนในการลงทุนดิจิทัล
วิธีอ่านค่าตัวต้านทาน แบบเส้น 4 และ 5 แถบสี วิธีการอ่านค่าตัวต้านทาน Resistor (R)
โดย mindphp จ 01 ม.ค. 2024 2:30 pm บอร์ด IOT - Internet of things
2
1801
จ 01 ม.ค. 2024 2:45 pm โดย mindphp View Topic วิธีอ่านค่าตัวต้านทาน แบบเส้น 4 และ 5 แถบสี วิธีการอ่านค่าตัวต้านทาน Resistor (R)
ความแตกต่างของเครื่อง Server R210 กับ R210 II
โดย mindphp จ 01 ม.ค. 2024 11:37 am บอร์ด ถาม - ตอบ คอมพิวเตอร์
1
309
จ 01 ม.ค. 2024 12:04 pm โดย mindphp View Topic ความแตกต่างของเครื่อง Server R210 กับ R210 II
มาทำความรู้จักกับบัตรผ่อนสินค้ากัน
โดย asider8629 อ 31 ธ.ค. 2023 8:30 pm บอร์ด พูดคุยเรื่องทั่วไป จับฉ่าย
1
291
จ 01 ม.ค. 2024 9:58 am โดย Consolez View Topic มาทำความรู้จักกับบัตรผ่อนสินค้ากัน
ESP32 WiFi Node32s ESP-32 ESP-32S NodeMCU ESP-WROOM-32 WiFi Bluetooth
โดย mindphp อ 31 ธ.ค. 2023 8:28 pm บอร์ด IOT - Internet of things
0
773
อ 31 ธ.ค. 2023 8:28 pm โดย mindphp View Topic ESP32 WiFi Node32s ESP-32 ESP-32S NodeMCU ESP-WROOM-32 WiFi Bluetooth
Mg90s Servo เฟืองเหล็ก motor Version อัพเกรดเฟือง ตัวนี้หมุนครึ่งรอบ 180 องศา
โดย mindphp อ 31 ธ.ค. 2023 8:27 pm บอร์ด IOT - Internet of things
0
1343
อ 31 ธ.ค. 2023 8:27 pm โดย mindphp View Topic Mg90s Servo เฟืองเหล็ก motor Version อัพเกรดเฟือง ตัวนี้หมุนครึ่งรอบ 180 องศา
ชุดข้อต่อ Servo Bracket เป็นโลหะวัสดุทนมาก ไว้ใช้คู่กับ Servo สำหรับทำแขนหมุน
โดย mindphp อ 31 ธ.ค. 2023 8:26 pm บอร์ด IOT - Internet of things
0
1326
อ 31 ธ.ค. 2023 8:26 pm โดย mindphp View Topic ชุดข้อต่อ Servo Bracket เป็นโลหะวัสดุทนมาก  ไว้ใช้คู่กับ Servo สำหรับทำแขนหมุน