2013-02-19 29 views
6

Tôi đang cố gắng để chạy hàng đợi nhiệm vụ Huey cho python (nó là một thay thế Celery) và tôi bị mắc kẹt với bắt đầu người tiêu dùng với chính.Configuration (như nó được viết trong the tutorial). Tôi biết huey_consumer đang tìm configfile ở đâu đó trong python, nhưng tôi không thể làm cho nó hoạt động theo hướng dẫn và tôi không biết tại sao tôi nên viết một tập tin cấu hình và tải nó như là một mô-đun (thay vì một tập tin).Cấu hình người tiêu dùng huey ở đâu?

Khi tôi chạy huey_consumer.py main.Configuration, nó trả về Unable to import "main".

Huey cũng có vấn đề này được viết trong số common pitalls của họ, nhưng cũng không thực sự hữu ích.

Nếu có ai đó sử dụng Huey, hãy giúp tôi.

Trả lời

0

Vì vậy, cách thức hoạt động của nó là cố gắng nhập mô-đun "chính". Nó sẽ là tương đương với mở ra một vỏ python và chạy:

>>> from main import Configuration 

lẽ bạn có thể trả lời với nhiều thông tin về môi trường của bạn, cách bố trí các tập tin của bạn, những gì bạn đang chạy vv

+0

Cảm ơn bạn đã trả lời. Tôi đã cố gắng hoàn thành [hướng dẫn] (http://huey.readthedocs.org/en/latest/getting-started.html) phần 'Tự mình thử nghiệm'. Tôi đã cài đặt huey, tôi đã viết ba tệp config.py, commands.py và main.py và tôi đã cố bắt đầu người tiêu dùng vì vậy tôi tin rằng máy khách nên được bắt đầu bằng config.py. Nhưng sau đó, tôi phải làm gì? Tạo một mô-đun python được gọi từ conig.py? Nó sẽ không được tốt hơn để chỉ bắt đầu một khách hàng với một tham chiếu đến configfile? –

+0

Hãy suy nghĩ về "chính" như một container phục vụ như là một entry-point vào ứng dụng của bạn. Chính sẽ nhập tất cả các lệnh * và * cấu hình của bạn. Vì vậy, đó là lý do tại sao, khi bạn bắt đầu người tiêu dùng, bạn cần phải trỏ nó vào chính. Tất cả đều được đề cập trong tài liệu. Nếu bạn có thể cung cấp thêm thông tin về bố cục tệp của mình, tôi có thể trợ giúp. Bạn đã thử mở một trình bao python và nhập chính như tôi đề nghị? – coleifer

0

tôi nghĩ rằng bạn cần thêm một tệp __init__.py vào thư mục chứa main.py, ... nếu không bạn không thể nhập bất kỳ thứ gì như python sẽ không coi thư mục này là một mô-đun.

What's the difference between a Python module and a Python package?

Xem bình luận của Giulio-piancastelli

+1

Tôi đã sai. Tại thời điểm này /usr/local/bin/huey_consumer.py không tải mô-đun nào cả, ngay cả với __init__.py huey_consumer.py phải được sao chép vào thư mục bạn có tệp của bạn: main.py, config.py, Command.py khác nó sẽ không hoạt động. Tôi đã thông báo về vấn đề này tại Github. – n3storm

2

tôi đã cùng một vấn đề và giải quyết nó bằng cách thêm thư mục chứa main.py đến PYTHONPATH. Không cần sao chép huey_consumer.py

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