2011-05-02 44 views
11

Tôi đang viết một khách hàng cung cấp thông tin, với mục đích là có một khách hàng cho các thiết bị và một trang web có cùng chức năng. Tôi sẽ phát triển trang web bằng cách sử dụng Django - điều này đã được quyết định; client sẽ được viết bằng python với cả CLI lẫn GUI PyQt4. Tôi đã viết các clinet đầu tiên, và nó khá nặng cơ sở dữ liệu, như tất cả mọi thứ được lưu trữ để cho phép nó được đọc trong khi offline.Sử dụng Django trừ máy chủ web

Nó đánh tôi ngày hôm nay rằng nó sẽ có ý nghĩa để sử dụng mô hình Django cho ứng dụng của tôi, để giảm sự lặp lại nỗ lực giữa khách hàng và trang web. Câu hỏi của tôi là cách dễ dàng là để tách riêng này, và bao nhiêu Django tôi sẽ cần trong khách hàng của tôi để sử dụng các mô hình của Django. AFAIK Tôi không cần phải chạy máy chủ, nhưng những gì khác là cần thiết? Tôi đã có ý tưởng tạo ra cùng một html cho khách hàng của tôi như là trang web, nhưng hiển thị nó với các widget Qt thay vì phục vụ các trang cho một trình duyệt.

Có ai đã thử loại điều này trước đây không? Tôi bắt đầu với điều này, nhưng sẽ rất tốt khi nhận được cảnh báo về những cái chết tiềm ẩn hoặc những thứ sẽ tạo ra một cơn ác mộng duy trì ...

Trả lời

14

Đọc trên standalone Django scripts và bạn sẽ được trên con đường của bạn để chiến thắng. Về cơ bản tất cả các bạn đang thực sự làm là tham khảo settings.py Django (mà Django mong đợi) và sau đó using models without web views or urls.

Nếu tất cả những gì bạn thực sự quan tâm là sử dụng ORM của Django để quản lý mô hình và tương tác cơ sở dữ liệu của bạn, bạn có thể cân nhắc sử dụng SQLAlchemy để thay thế.

+0

điều này có vẻ tuyệt vời - nếu tôi p – theheadofabroom

+0

Nếu bạn "p"? Bạn có bị cắt ở đó không? :) – jathanism

+0

Lol - vâng - Tôi đang sử dụng điện thoại thông minh - tôi không biết nó đã thực sự được đăng. Tôi sẽ nói rằng tôi sẽ có một trò chơi với nó trước khi tôi chấp nhận câu trả lời của bạn trong trường hợp có bất cứ điều gì nhiều hơn nhu cầu giải thích. Chúc mừng! – theheadofabroom

0

Bạn vẫn sẽ phải chạy ứng dụng Django dưới dạng web máy chủ, nhưng bạn có thể hạn chế nó để chỉ phục vụ cho localhost hoặc một cái gì đó. Và chắc chắn, bạn có thể sử dụng QtWebKit làm ứng dụng khách.

+0

Bạn có chắc tôi cần một ứng dụng đầy đủ để thực hiện việc này không? Nó có vẻ khá nặng, tôi đã hy vọng để có thể dải xuống chỉ các chức năng cơ sở dữ liệu và các mẫu động cơ ... – theheadofabroom

+0

@ BiggAl Vâng, bạn đã có để làm cho các mẫu của bạn bằng cách nào đó. Tôi nghĩ nó sẽ đơn giản hơn để làm theo cách này. Có vẻ như rất nhiều khó khăn để đi qua chỉ vì bạn không thích ý tưởng của một máy chủ web. – arussell84

+0

tại thời điểm này nó trông giống như phương pháp @ Jonathan cung cấp nên làm tuyệt vời. Tôi muốn triển khai ứng dụng khách trên thiết bị di động, vì vậy tôi muốn biến nó thành trọng lượng nhẹ nhất có thể, tuy nhiên nếu bạn đã thử điều này trước khi vui lòng cho tôi biết nếu bạn gặp phải những cạm bẫy. – theheadofabroom

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