Tôi có một chuỗi mà là sản phẩm của Ruby on Rails render_to_string
Đối tượng chuỗi Ruby rỗng hay không?
Khi trong trình gỡ lỗi của Ruby đây là những gì tôi nhận được
pp string.inspect # -> blank
pp string # -> blank
pp string.Class # -> String
pp string.empty? # -> false
pp string.nil? # -> false
pp string.blank? # -> false
pp string.to_s # -> blank
Tôi biết có nội dung trong chuỗi vì logger.info string
trả về chuỗi như mong đợi, nhưng tôi không biết làm thế nào để có được nó.
Bất kỳ ý tưởng nào? Cảm ơn!
EDIT: Tôi đã phát hiện ra rằng vấn đề này rất được bản địa hoá. Nó chỉ xảy ra khi tôi đang sử dụng trình gỡ lỗi ruby. Và nó xảy ra với bất kỳ chuỗi nào có biểu tượng phần trăm trong đó.
Ví dụ, Nếu tôi làm một chuỗi
string = 'this is a string with a % symbol'
chuỗi có thể không còn được kiểm tra, in, hoặc thậm chí giải nén.
Tôi đang sử dụng Ruby 1.8 và Rails 2.3.
Tôi nghĩ rằng điều này có thể chỉ là một phần của sự thiếu hiểu biết của tôi về một cái gì đó trần tục trong Ruby.
lẽ chứa một ký tự xuống dòng. 'String.length' cung cấp cho bạn những gì? Ngoài ra, hãy thử 'print" ["+ string +"] "' .. cũng sẽ giúp "xem" chuỗi chứa. Hãy thử sử dụng một cái gì đó khác với 'pp', chẳng hạn như' p', 'puts' hoặc' print'. – Zabba
string.length trả về 12045. Đó là một chuỗi dài. Những thứ khác không hoạt động. – vinhboy
Chuỗi ký tự là gì? – squarism