2011-07-05 31 views
5

Sau khi đọc (gần) toàn bộ sách điện tử và xem qua API
tôi vẫn đang tự hỏi mình cách nhận ra hành vi máy chủ web "truyền thống" với opa.Làm thế nào để làm File I/O trong Opa?

Tôi hiểu (ít nhất tôi tin rằng) rằng liên kết tài nguyên bên ngoài được chỉ định tại
biên dịch thời gian thành tệp thực thi, làm cho chúng trở nên bất biến và dễ uốn.

Nhưng nếu, giả sử, tôi muốn thay đổi biểu định kiểu của ứng dụng mà không cần biên dịch lại?
Có vẻ như có một vài phương pháp trong stdlib (apidoc) nhưng chúng không bao gồm những gì tôi đang sử dụng để từ các ngôn ngữ lập trình khác.

Một giải pháp có thể tôi có thể nghĩ là sử dụng cơ sở dữ liệu nội bộ,
nhưng có vẻ hơi quá mức đối với một thứ đơn giản như File I/O truyền thống.

Trả lời

6

Chỉnh sửa: this bài đăng trên blog giải thích thêm về cách xử lý tài nguyên bên ngoài trong Opa.


Câu chuyện dài: bạn hiếm khi làm việc với các tệp bên ngoài trong Opa.

Hãy để tôi cố gắng phá vỡ điều này. Opa thực sự sẽ nhúng tài nguyên. Nhưng đối với chế độ phát triển bạn thực sự chỉ muốn có thể tinh chỉnh chúng (chủ yếu là CSS) và xem các thay đổi ngay lập tức. Nếu bạn biên soạn chương trình của bạn trong một chế độ phi phát hành sau đó nó sẽ hỗ trợ loại hành động (thử --help, dưới đây là một đoạn trích)

Debugging Resources : dynamic edition: 
    [...] 
    --debug-editable-css 
       Export the CSS files embedded in the server to the file 
       system, so that they can be viewed and edited during 
       execution of the application 

Đối với nhiều người có thể chỉnh sửa & thay đổi các nguồn lực khác một indede sẽ sử dụng cơ sở dữ liệu.

Và nếu bạn thực sự cần phải làm việc với các tập tin (một lần nữa: với Opa bạn sẽ cần nó ít hơn nhiều so với các ngôn ngữ web truyền thống) sau đó hãy nhìn vào stdlib.io và, để sử dụng tiên tiến, tại BslFile mô-đun với bindings đến các hàm Ocaml cho thao tác tập tin.

+0

Cảm ơn bạn rất nhiều akoprowski, tôi không biết về các chế độ gỡ lỗi. Tôi sẽ xem xét kỹ! –

+0

Ok, hãy tận hưởng nó :). Thông thường nếu bạn muốn cảm ơn cho một câu trả lời trên StackOverflow bạn có thể lên bầu chọn nó và/hoặc chọn nó như là câu trả lời cho bạn câu hỏi của bạn :) – akoprowski

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