2013-03-01 41 views
8

Tôi đang cố gắng xem điều gì đang xảy ra với mã hóa biến của tôi trong chế độ xem của tôi. Vì vậy, tôi kích hoạt bảng điều khiển đường ray và cố gắng làmSử dụng các phương thức trợ giúp như html_escape trong giao diện điều khiển đường ray

$ rails console 
Loading development environment (Rails 3.2.11) 
irb(main):001:0> html_escape({:a=>1, :b=>"my str"}) 
NoMethodError: undefined method `html_escape' for main:Object 

Làm cách nào để sử dụng h hoặc html_escape trong bảng điều khiển đường ray?

Trả lời

8

bạn gọi nó qua helper. một số phương pháp là riêng tư, do đó bạn có thể cần sử dụng gửi để gọi cho họ

helper.send(:html_escape, '123') 
helper.pluralize 3, 'user' 
+0

downvoter, xin vui lòng cho chúng tôi biết những gì là sai vì vậy chúng tôi có thể học hỏi. – highBandWidth

+0

có vẻ như tôi nhận được một vài trong số những người đó ngày hôm nay. – jvnill

+0

Mẹo rất hữu ích! – jmoreira

6

Dễ giải quyết. html_escape được định nghĩa trong ERB :: util vì vậy chỉ cần viết:

include ERB::Util 

trong giao diện điều khiển của bạn trước khi sử dụng đầu tiên của html_escape

+0

bất kỳ ý tưởng nào về phương thức trợ giúp html_escape làm gì? (Noob cố gắng tìm hiểu.) – BKSpurgeon

+0

Nó gọi CGI.escapeHTML với chuỗi được cung cấp – SunnyMagadan

0
> helper.send(:html_escape, '{ a: 1, b: "my str" }') 
"{ a: 1, b: "my str" }" 
+2

bạn cũng nên kiểm tra câu trả lời, nếu một cái gì đó đã được trả lời, thì bạn không cần viết lại câu trả lời tương tự. –

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