2011-03-02 26 views
5

Tôi đang cố viết một ứng dụng web python đơn giản bằng máy chủ web Tornado và đang gặp sự cố khi sử dụng các thư viện JavaScript tôi cần. Tôi muốn sử dụng JavaScript Protovis âm mưu thư viện, vì vậy tôi đã thêm đoạn mã sau 'Hello World' để template.html tôi:Sự cố với thư viện Tornado và JavaScript

<script type="text/javascript" src="/protovis-d3.2.js"></script> 
<script type="text/javascript+protovis"> 
new pv.Panel() 
    .width(150) 
    .height(150) 
    .anchor("center") 
    .add(pv.Label) 
     .text("Hello, world!") 
     .root.render(); 
</script> 

Bất cứ khi nào tôi chạy máy chủ web, tuy nhiên, và cố gắng truy cập vào trang, tôi nhận được lỗi sau tại bảng điều khiển:

WARNING:root:404 GET /protovis-d3.2.js (127.0.0.1) 0.46ms 

Tệp protovis.js nằm trong cùng thư mục với tệp server.py của tôi và tất cả quyền của nó được đặt chính xác. Tôi gặp lỗi tương tự khi thử tệp src và JavaScript vì vậy tôi biết không có vấn đề gì với tệp protovis.js, nhưng có gì đó với định tuyến của máy chủ Tornado.

Có ai biết tôi có thể đúng mã src mã JavaScript này không, cảm ơn.

Trả lời

13

Bạn nên đọc tài liệu về static files.

Đặc biệt, cách tiêu chuẩn là:

  • Tạo một thư mục 'tĩnh' trong thư mục gốc của ứng dụng của bạn

  • Thêm dòng sau để cài đặt ứng dụng của bạn:

    " static_path ": os.path.join (os.path.dirname (tệp)," tĩnh ")

  • Đặt protovis-d3.2.js trong thư mục tĩnh của bạn

  • Hãy tham khảo các tập tin /static/protovis-d2.2.js trong HTML của bạn
+1

Cảm ơn rất nhiều, điều này một cách hoàn hảo đã giúp tôi – Swaraj

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