Tôi đang sử dụng ajax với jQuery trong ứng dụng CakePHP của mình.
và chức năng javascript của tôi được đặt bên trong tệp javascript.thực hành tốt nhất để sử dụng url hành động trong khi gọi ajax trong cakePHP
bây giờ trong hệ thống nội bộ các tập tin được lưu giữ trong "/ mẫu" thư mục để các con đường trong khi tôi gọi hàm sẽ
trong ajax.js
$.post({url : "/sample/controller/action"})
nhưng sau khi lưu trữ nó url sẽ trở thành
$.post({url : "/mydomain.com/controller/action"})
trong CakePHP chúng tôi $html->url
để tạo ra các url
nhưng kể từ khi mã này là trong tập tin js i ca không sử dụng chức năng mà
tôi không muốn thay đổi tất cả các url hành động ajax thủ công trước khi lưu trữ
Tôi làm điều này cho mọi ứng dụng web tôi viết bằng mọi khung công tác. Nó thậm chí còn tiện dụng hơn nếu bạn đang sử dụng Smarty và cần baseUrl trong javascript. Bạn sẽ phải thực hiện {/ literal} {$ baseUrl} {/ literal} là một PITA hoàng gia. Các giải pháp trên giải quyết điều này độc đáo. –
Đây là câu trả lời đúng nhưng nó không hiệu quả với tôi.Có thể là vì tôi đang sử dụng Bánh 2 và giải pháp này là dành cho phiên bản cũ hơn. Tuy nhiên, mã tôi đã sử dụng để làm cho nó hoạt động trong Cake2 là ' ' – Joseph
Và với CakePHP 3, tôi đã sử dụng' var appBaseUrl = ' Php echo $ this-> Url-> build ('/', true); ?> '; ' – XerXes