Việc triển khai Zend_Rest_Route
không cho phép nhiều tùy chỉnh nhưng thay vào đó cung cấp lược đồ định tuyến thô sơ cho việc sử dụng ngoài hộp.
Vì vậy, nếu bạn cần thay đổi cách thức URI được diễn giải, bạn có thể mở rộng các lớp Zend_Rest_Route
, Zend_Controller_Router_Route_Module
hoặc Zend_Controller_Router_Route_Abstract
để tạo loại định tuyến của riêng bạn.
Hãy xem phương pháp match
của các lớp đó và những gì chúng thực hiện - ví dụ: họ điền vào mảng thuộc tính $_values
(trong khi tôn trọng các thuộc tính $_moduleKey
, $_controllerKey
và $_actionKey
).
Sau đó, bạn có thể thêm nó, ví dụ: như các tuyến đường đầu tiên trong lớp bootstrap của bạn:
$frontController = Zend_Controller_Front::getInstance();
$router = $frontController->getRouter();
$router->addRoute('myRoute', new My_Route($frontController));
$router->addRoute('restRoute', new Zend_Rest_Route($frontController));
Xem:
http://framework.zend.com/manual/1.12/en/zend.controller.router.html#zend.controller.router.basic
Routing là một quá trình đơn giản lặp qua tất cả các tuyến đường cung cấp và phù hợp với định nghĩa của nó để yêu cầu hiện tại URI. Khi một kết quả trùng khớp được tìm thấy, các giá trị biến được trả về từ cá thể Route và được tiêm vào đối tượng Zend_Controller_Request để sử dụng sau này trong bộ điều phối cũng như trong các bộ điều khiển do người dùng tạo ra. Trên kết quả đối sánh phủ định, tuyến đường tiếp theo trong chuỗi được chọn.
mặc dù nó là không chính xác câu trả lời nó đã chỉ cho tôi đúng hướng nên cảm ơn! cuối cùng tôi chỉ cần thêm một Zend_Route với điều khiển liên tục, mô-đun và hành động. – Alon1980
Thật không may có vẻ như kho lưu trữ không còn khả dụng, do đó liên kết bị hỏng. –