Khi sử dụng hộp công cụ python (.pyt) trong ArcMap, thông thường tôi sẽ theo một mẫu trong đó tệp .pyt chỉ đơn giản là một trình bao bọc để thu thập các đối số đầu vào và tự xác định các công cụ. Mã hỗ trợ được giữ trong các mô-đun thử nghiệm đơn vị riêng biệt.
Thí dụ:
import supporting_module
class MyTool(object):
...
def execute(self, parameters, messages):
"""The source code of the tool."""
some_input = parameters[0].valueAsText
some_output = parameters[1].valueAsText
supporting_module.do_something(some_input, some_output)
arcpy.SetParameter(2, some_output)
Điều này thực sự tốt nhưng tôi gặp phải một vấn đề khó chịu trong quá trình phát triển. Nhấp chuột phải -> Làm mới trên .pyt trong ArcMap chỉ làm mới mã của tệp .pyt. Nó không làm mới các mô-đun đã nhập, vì vậy tôi phải đóng và mở lại ArcMap bất cứ khi nào tôi thay đổi một cái gì đó ở đó. May mắn thay, vì tôi đang kiểm tra mã độc lập, tôi không phải làm điều này một tấn, nhưng nó vẫn là một rắc rối lớn. Có cách nào để khắc phục điều này? Một số thứ liên quan - có cách nào để làm mới hoàn toàn bảng điều khiển Python (tôi có gói trang web tùy chỉnh mà tôi cũng phải đóng / mở lại ArcMap để kéo theo các thay đổi từ đó không)?
Tôi đang sử dụng ArcMap 10.2.1.