7

Có thể sử dụng đá quý better_errors xuất sắc làm trình gỡ lỗi không?Sử dụng better_errors làm trình gỡ lỗi?

Nói cách khác, tôi có thể thêm mã để làm cho mã rơi vào trang "lỗi" better_errors, poke xung quanh, kiểm tra mọi thứ và sau đó tiếp tục không?

Tôi có thể thêm lỗi không có thật hoặc raise, nhưng sau đó tôi không thể "tiếp tục".

Vâng, tôi biết tôi có thể sử dụng trình gỡ lỗi hoặc cạy, nhưng giao diện better_errors là vượt trội, chứa tất cả các loại yêu cầu & ngăn xếp thông tin, và tôi có thể mã hóa/gỡ lỗi với 2 cửa sổ đang mở thay vì 3.

Trả lời

3

Không , nó được xây dựng xung quanh trang lỗi. Và ảnh chụp nhanh ngăn xếp cuộc gọi là từ ngoại lệ cuối cùng.

3

Hoặc hoặc .... nếu bạn thực sự cần quá.

Chỉ cần đặt: raise 'something' và tăng lỗi tùy ý ở bất cứ nơi nào bạn cần và sau đó bạn có REPL ở đó.

3

Nhìn vào đá quý binding_of_caller để sử dụng cùng với better_errors. Mất 8 phút và xem RailsCasts #402 cho bản trình diễn sử dụng cả hai đá quý cùng nhau. Nó sẽ không giúp bạn gỡ rối bước nhảy hoặc thiết lập điểm quan sát, nhưng nó chắc chắn sẽ cho phép bạn kiểm tra và poke xung quanh các biến cục bộ và cá thể trong bất kỳ khung ngăn xếp nào (từng có REPL riêng của nó).

Từ README:

Sử dụng binding_of_caller chúng ta có thể lấy bindings từ cao lên gọi ngăn xếp và đánh giá mã trong bối cảnh đó. Cho phép truy cập vào các liên kết tùy ý xa ngăn xếp cuộc gọi, không giới hạn chỉ đối với người gọi ngay lập tức.

Hãy chắc chắn chỉ sử dụng nó trong môi trường phát triển của bạn. Bạn nên có những điều sau đây trong Gemfile của bạn.

group :development do 
    gem 'better_errors' 
    gem 'binding_of_caller' 
end