MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

ImportError:Không có mô-đun nào có tên phân tích cú pháp

Có vẻ như bạn đang chạy ứng dụng của mình bằng python 2.x, nhưng các mô-đun mà ứng dụng của bạn sử dụng là từ python 3.x. Đặc biệt, pymongo đang cố nhập mô-đun urllib.parse , được gọi là urlparse trong python 2.x. Do đó, thực thi import urllib.parse với python 2.x gây ra lỗi ImportError.

Bạn đã kích hoạt môi trường ảo của mình như thế nào?

Phản hồi nhận xét:

Tốt rồi. Mã pymongo bên trong env ảo của bạn là mã kết nối với máy chủ mongodb của bạn (sử dụng một cổng được chỉ định).

Bạn đã làm theo các hướng dẫn trong tài liệu về Flask liên quan đến mod_wsgi , virtualenv và đặt activate_this biến?

Phản hồi cho nhận xét số 2:

Có, trang web của bạn hoạt động tốt khi được thực thi với python 2.x, nhưng khi bạn bắt đầu sử dụng db, bạn đang sử dụng các mô-đun cố gắng nhập các thư viện bên trong python 3.x. Do đó, nếu bạn tiếp tục sử dụng python 2.x để thực thi trang web của mình, thì bạn sẽ không sử dụng db.

Hãy thử điều này:

1) Đi tới thư mục chứa môi trường ảo của bạn:

$ cd /some/path/to/venv

2) Liệt kê tất cả các tệp:

$ ls

3) Thay đổi vào thư mục bin:

$ cd bin

4) Liệt kê tất cả các tệp:

$ ls

5) Mở tệp activate_this.py và đọc các nhận xét ở trên cùng, ví dụ:

$ vi activate_this.py

6) Nhấp vào liên kết đến tài liệu Flash mà tôi đã đăng trong phản hồi trước đó của mình và đọc lại tài liệu ở đó.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. làm thế nào để đếm php mongodb nhúng?

  2. Cách biểu diễn một mảng với các kiểu hỗn hợp

  3. Lỗi không thể kết nối với MongoLab auth

  4. Tại sao PyMongo ném AutoReconnect?

  5. MongoEngine:EmbeddedDocument v / s. Trường tham chiếu