2011-12-30 22 views
8

Từ trang này,Tôi nên đặt các tệp widget tùy chỉnh của mình trong khung công tác Yii ở đâu?

http://www.yiiframework.com/wiki/23/how-to-create-a-breadcrumb-widget/

Có vẻ như nó gợi ý rằng chúng ta nên đặt các tập tin trong thư mục thành phần. Nhưng nếu tiện ích của tôi chứa tệp javascript và css, thì những tệp này nên được đặt ở đâu?

Nhân tiện, đây có phải là ý tưởng hay khi tôi tạo nó dưới dạng tiện ích mở rộng? Nếu tôi đi theo cách này, tất cả các tập tin widget sẽ tự chứa trong một thư mục bên trong thư mục mở rộng. Nhưng kể từ khi các widget tôi sẽ làm việc trên là rất tùy chỉnh, nó không chắc rằng nó sẽ hữu ích cho người khác hoặc các dự án khác của tôi. Làm cho nó một phần mở rộng có vẻ hơi lạ.

Tôi hiểu rằng nó không thực sự quan trọng nơi tôi đặt những tập tin này miễn là các đường dẫn tôi đang sử dụng trong các mã là chính xác nhưng tôi muốn biết thực tế phổ biến.

Trả lời

11

Tôi nghĩ rằng thực tế phổ biến là đặt tiện ích trong thư mục tiện ích mở rộng với js & tệp css trong một thư mục có tên là nội dung. Trong tệp lớp php, trước tiên bạn khởi tạo bằng cách xuất bản nội dung bằng trình quản lý nội dung yii. Cấu trúc tập tin có thể giống như

extensions/ 
    widget_name/ 
    widget.class.php 
    assets/ 
     plugin.js 
     style.css 
+1

bạn có thể giải thích cách xuất bản các tệp này và sử dụng các tệp này trong tệp lượt xem hay không. – Hemc

+0

Thư mục mở rộng không được nhìn thấy khi tôi nhập vào ứng dụng sử dụng \ ... \ WidgetName.php. Làm thế nào nó có thể được thêm vào đó? – Tebe

8

tôi sẽ tham gia đề nghị để đưa widget dưới /bảo vệ/extensions. tôi đặt tài sản một cách nhẹ chi tiết hơn: /bảo vệ/extensions/WidgetClassName/tài sản/ và xem các tập tin phụ tùng trong /bảo vệ/extensions/WidgetClassName/views/...

Đừng quên chỉnh sửa /protected/config/main.php của bạn và thêm một hàng trong phần 'nhập' (để tự động tải tiện ích con): 'ext.WidgetClassName.WidgetClassName. * '

+1

Cảm ơn bạn đã nhắc nhở :) – bobo

Các vấn đề liên quan