|
Laravel::Bundles มาต่อกันที่เรื่องส่วนขยายหรือปลั๊กอินของ Laravel |
BUNDLES(ส่วนขยาย) Bundles คือส่วนเสริมของ laravel ที่ถูกเพิ่มเข้ามาในเวอร์ชัน 3 เองครับ bundles มีโครงสร้างที่เหมือนกับตัว laravel เอาเป็นว่าคือการย่อตัว laravel ให้เล็กลงเหลือสิ่งที่จำเป็นต้องใช้จริงๆ
Creating Bundles( การสร้างส่วนขยาย ) เริ่มแรกเลยเราก็ต้องไปบอกให้ laravel รู้ว่าขณะนี้เราได้เพิ่มส่วนขยายเข้ามาแล้ว โดยการเข้าไปเพิ่มในไฟล์ start.php
Code (PHP)
<?php
Autoloader::namespaces(array(
'Admin' => Bundle::path('admin').'models',
));
ทีนี้เราจะเพิ่มอะไรต่อก็ต้องไปศึกษาเพิ่มเติมเอง และไฟล์ start.php ใช้งานในโฟลเดอร์ bundles ไม่ได้นะครับ
Registering Bundles( ) ทีนีเราก็ต้องมาเพิ่มชื่อส่วนขยายของเรา ไวที่ไฟล์ bundles.php เพื่อให้ laravel โหลดมาใช้ได้ครับ
เราสามารถกำหนดเส้นทางที่อยู่ของส่วนขยายเราได้ด้วยครับ กรณีไม่ได้เอาไว้ตรง root
Code (PHP)
return array(
'admin' => array('location' => 'userscape/admin'),
);
Bundles & Class Loading ถ้าเราอยากทำที่เดียวจบเลยก็ไม่ต้องไปทำใน start.php เลยครับ ตัวอย่างข้างล่างเราตั้งค่าในไฟล์ bundles.php ทีเดียวจบ
Code (PHP)
return array(
'admin' => array(
'autoloads' => array(
'map' => array(
'Admin' => '(:bundle)/admin.php',
),
'namespaces' => array(
'Admin' => '(:bundle)/lib',
),
'directories' => array(
'(:bundle)/models',
),
),
),
);
Starting Bundles(ทำให้ส่วนขยายทำงาน) สั่งให้ส่วนขยายทำงาน
Code (PHP)
Bundle::start('admin');
ถ้าเราไม่อยากทำ แบบข้างบนบ่อยๆก็ใส่ค่าเพิ่มไปตรงไฟล์ bundles.php ด้วยว่า auto => true เหมือนตัวอย่างเราสั่งให้ Laravel ทำงานอัตโนมัติ
Code (PHP)
return array(
'admin' => array('auto' => true),
);
สั่งให้ bundles หยุดทำงาน
Code (PHP)
Bundle::disable('admin');
Using Bundles( การใช้งานไฟล์ของส่วนขยาย ) ทีนี้เราก็เรียกใช้งานไฟล์ต่างของ ส่วนขยาย ได้ตามใจเลยครับ
Code (PHP)
return View::make('bundle::view');
โหลดการตั้งค่าของ ส่วนขยายแค่ส่วนของไฟล์:
Code (PHP)
return Config::get('bundle::file.option');
โหลดค่าภาษาของ ส่วนขยายแค่ส่วนของไฟล์:
Code (PHP)
return Lang::line('bundle::file.line');
เราสามารตรวจว่า ส่วนขยายยังมีอยู่ไหมได้โดยฟังชัน exist :
Code (PHP)
Bundle::exists('admin');
อยากได้ค่าที่อยู่ของ bundles ก็ใช้ path เหมือนในตัวอย่างเลยครับ:
Code (PHP)
$location = Bundle::path('admin');
อยากได้ค่าของการตั้งค่าในส่วนขยายทั้งหมดก็เหมือนในตัวอย่างเลยครับ:
Code (PHP)
$config = Bundle::get('admin');
อยากรู้ว่ามีส่วนขยายใดบ้างที่ทำงานอยู่ก็ชึคำสั่งนี้เลยครับ:
Code (PHP)
$names = Bundle::names();
Bundle Assets ถ้าในส่วนขยายเรามีโฟลเดอร์ view ด้วยก็ต้องมีไฟล์ js,css,image ของตัวส่วนขยายเก็บไว้ที่โฟลเดอร์ public ด้วย โชคดีที่เราใช้คำสั่ง artisan ใน cmd ช่วยคัดลอกได้เหมือนในตัวอย่างเลยครับ
Code (PHP)
php artisan bundle:publish
ที่นี้ไฟล์ข้างตั้นจะถูกย้ายมาตามนี้ public/bundles/admin bundle
Installing Bundles ( การติดตั้งส่วนขยายแบบง่ายที่สุดนะครับ) โดยใช้ cmd ตามคำสั่งนี้เลยครับ laravel จะไปโหลดมาจากที่อยู่ของไฟล์แล้วมาเก็บที่โฟลเดอร์ bundles ให้เลยครับ
Code (PHP)
php artisan bundle:install eloquent
ทีนี้ก็เหลือให้เราเอาใช้คำสั่ง bundle::publish กับ เอารายชื่อไปเพิ่มใน bundles.php คราวหน้าจะมาต่อเรื่อง การจัดการไฟล์ครับ ครับ ติชมผมได้นะครับ ส่ง pm มาเลย
|
|
|
|
|
|
|
|
By : |
taqman
|
|
Article : |
บทความเป็นการเขียนโดยสมาชิก หากมีปัญหาเรื่องลิขสิทธิ์ กรุณาแจ้งให้ทาง webmaster ทราบด้วยครับ |
|
Score Rating : |
|
|
Create Date : |
2013-05-19 |
|
Download : |
No files |
|
Sponsored Links |
|
|
|
|
|
|