2012-01-13 38 views
9

Tôi không biết Ruby nhưng tôi đang gặp sự cố này với đơn đăng ký của mình. Ai đó có thể giúp tôi?không thể chuyển đổi nil thành Chuỗi

ActionView :: TemplateError (không thể chuyển đổi bằng không vào String) trên dòng # 7

4: <h3><span><%= opinion.opinion %></span>: <%= opinion.keywords.sort.join('/').upcase %> </h3> 
5: <div class="original">Estado original: <span class="pos"><%= opinion.opinion %></span></div> 
6: <%#= highlight(simple_format(highlight_ontology(opinion)), opinion.keywords, :highlighter => '<em>\1</em>') %> 
7: <%= simple_format(highlight_ontology(opinion)) %> 
8: <%= button_to_remote('POSITIVO', {:url => url_for(opinion), :method => :put, :with => '"opinion[opinion]=POSITIVE"' }, :class => :positive) %> 
9: <%= button_to_remote('OBJETIVO', {:url => url_for(opinion), :method => :put, :with => '"opinion[opinion]=OBJECTIVE"' }, :class => :objective) %> 
10: <%= button_to_remote('NEGATIVO', {:url => url_for(opinion), :method => :put, :with => '"opinion[opinion]=NEGATIVE"' }, :class => :negative) %> 

Cảm ơn!

Trả lời

16

Sử dụng (variable || "") thay vì chỉ biến nên đặt giá trị mặc định thành chuỗi rỗng.

Kỹ thuật này được gọi là null (hoặc nil) coalescing.

+1

tùy thuộc vào nơi biến đến từ, bạn có thể đã muốn đặt mặc định thành "" trước khi sử dụng trong chế độ xem. Trong trường hợp của bạn có lẽ sẽ ở trong highlight_ontology. – trueunlessfalse

+4

Tôi thích 'variable.to_s'. – sawa

+0

Truy vấn: Lỗi "không thể chuyển đổi nil thành chuỗi". Làm thế nào/tại sao bạn có thể buộc các biến cùng một chuỗi? – adamwong246

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