Cách tốt nhất để thêm ý kiến ​​trong erb


253

Làm cách nào để chúng tôi thêm nhận xét trong tệp erb, nếu chúng tôi không muốn chúng được tạo vào nội dung html?

Câu trả lời:


353

Sử dụng <%# %>trình tự, ví dụ

<%# This is a great comment! %>

Tôi đã từng sử dụng định dạng này cho đến khi tôi nhận thấy nó chỉ phát sinh lỗi trên máy tính của ai đó trong nhóm của tôi (cả hai chúng tôi đều sử dụng linux, nhưng các bản phân phối khác nhau), bất kể tôi có tránh nó kể từ ..
vise

4
Đây chỉ là một trong số ít thẻ ERB được hỗ trợ. ruby-doc.org/stdlib/libdoc/erb/rdoc/groupes/ERB.html Nếu nó không hoạt động trên PC của họ, họ có lỗi đánh máy hoặc họ không sử dụng ERB thực sự. Tuy nhiên, tôi đã gặp phải các vấn đề với mã như thế này <% cho foo trong thanh # loop trên thanh%> .. Điều này ổn trong ERB được vận chuyển với 1.8.6, nhưng khi tôi chuyển sang 1.8.7, nó đã gây ra rất nhiều vấn đề.
John Douthat

17
tức là không thể có bất kỳ khoảng trống nào giữa <%#
John Douthat

Làm cách nào tôi có thể nhận được bạn cùng văn bản để tạo các kiểu nhận xét này với apple- /
Michael

2
@Mike Ctrl + Shift + period (tức là Ctrl + GreaterThan) nhanh chóng 4 lần nên làm điều đó.
John Douthat

47

Cho kỷ lục

<%# This is a great comment! %>

<%#= This is a great comment! %>

4
Các <%=-> <%#=ví dụ là hữu ích. Nó không yêu cầu một trường hợp đặc biệt và không được ghi lại . Nó hoạt động và là dễ nhất, mặc dù! (Nhịp đập phải đoán xem có =khi nào không chú ý đến nó không.)
Benjamin Atkin

1
Sự khác biệt giữa hai là gì?
Travis Reeder

3
@TravisR: Cái đầu tiên chỉ là một bình luận, cái thứ hai cũng chỉ là một bình luận nhưng có lẽ phát sinh khi bạn đang cố gắng vô hiệu hóa <%= ... %>bằng cách biến nó thành một bình luận.
mu quá ngắn

28

Đối với bình luận khối:

<% if false %>
    code to be commented out...
<% end %> 

2
Đối với các khối, bạn chỉ có thể thêm ngắt dòng bên trong <%# %>thẻ.
RobW

1
Có lẽ vẫn sẽ đưa ra lỗi cho mã bị hỏng trong nhận xét
Qwertie

6

Tôi có một thiết lập Windows và chuỗi <% - #%> này là trình tự duy nhất phù hợp với tôi:

Thí dụ:

<%-# This is a sample comment! %>

2

Vì .erb theo định nghĩa "ruby nhúng", bạn có thể nhúng mọi mã ruby ​​giữa: <%= và cái khác : %>, thường là tất cả được viết trong một dòng. Ngoài ra, các nhận xét một dòng của ruby ​​luôn bắt đầu bằng #, vì vậy <%=# Comment %>kiểu này khớp hoàn hảo với cả hai kiểu ruby ​​thuần túy và erb cho các nhận xét một dòng.


Điều này không hoạt động gây <html> <body> <form method="POST" action="www.some-url.com"> <input id="data" name="data" value="<%=# "String" %>"> <input type="submit" value="Send"> </form> </body> </html>ra lỗi
Epigene

@Epigene Nguyên nhân có thể gây ra lỗi là dấu ngoặc kép bên trong. Không chắc chắn lý do tại sao bạn muốn làm điều này, nhưng để thoát khỏi lỗi, hãy thử:value="<%=# 'String' %>"
jdigital

1

Tôi không làm việc trong các tập tin Bộ điều khiển, tôi phải đặt nó giữa các dấu gạch chéo

/ bình luận ở đây .... /


1

Trong trình soạn thảo văn bản của tôi, tôi chạy command + /(phím tắt văn bản cao siêu). Nó sẽ như thế này.

<%
=begin%>
    Here is the comment 
<%
=end%>

Nó không nhìn đơn giản, nhưng nó hoạt động.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.