2008-09-13 31 views

Trả lời

11

Có. Cách dễ nhất là tăng giá trị dưới dạng chuỗi. Giống như vậy: raise @foo.to_s

Hoặc, bạn có thể cài đặt trình gỡ lỗi (gem install ruby-debug), và sau đó khởi động máy chủ phát triển với cờ --debugger. Sau đó, trong mã của bạn, hãy gọi hướng dẫn debugger.

Bên trong lời nhắc trình gỡ lỗi, bạn có nhiều lệnh, bao gồm p để in giá trị của biến.

Cập nhật: đây là a bit more about ruby-debug.

5

Nếu bạn có một biến điều khiển ví dụ đặt tên @foo, sau đó trong bộ điều khiển của bạn, bạn chỉ có thể làm điều gì đó như:

logger.debug "@foo is: #{@foo}" 

Ngoài ra, bạn có thể xuất giá trị trong mẫu quan điểm của bạn sử dụng:

<%= debug @foo %> 
5

Tôi thích sử dụng phương pháp kiểm tra như vậy:

raise @foo.inspect 

Nó có nhiều thông tin hơn to_s, giống như các giá trị thuộc tính.

3

Tóm tắt thông tin từ Jordi Bunster, John Topley, và Jaryl:

I. nhanh và cách bẩn:

raise @foo.inspect 

trong điều khiển của bạn. Hoặc

<% raise @foo.inspect %> 

trong chế độ xem của bạn.

II. Ghi nhật ký thích hợp cho bạn development.log:

logger.debug "@foo == #{@foo.inspect}" 

III. Full-fledged debugging:

Cài đặt trình gỡ lỗi (gem install ruby-debug), sau đó khởi động máy chủ phát triển với cờ --debugger. Sau đó, trong mã của bạn, hãy gọi hướng dẫn debugger.

Bên trong lời nhắc trình gỡ lỗi, bạn có nhiều lệnh, bao gồm p để in giá trị của biến.

0

Tăng ngoại lệ là cách nhanh nhất nếu bạn chỉ cần xem xét giá trị, nhưng đáng để bạn tìm hiểu cách sử dụng trình gỡ lỗi đúng cách. Rất hiếm khi bạn chỉ cần xem giá trị của một biến, có thể bạn đang cố tìm lỗi trong mã của mình và đó là điều mà trình gỡ lỗi dành cho.

Gửi thông tin đến nhật ký phát triển chậm hơn một trong hai tùy chọn khác ở đây cho đến giờ nếu bạn tìm hiểu cách sử dụng trình gỡ rối (ai muốn đọc qua các tệp nhật ký). Sử dụng logger để sản xuất, bạn sẽ muốn xem giá trị là gì khi ai đó gọi cho bạn và nói rằng mọi thứ đều bị hỏng.

0

Vâng, tôi thường thích đầu ra sai số chuẩn

$ stderr.print ("bất cứ điều gì")

của nó đơn giản và không được công việc.

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