ГоловнаВсі публікаціїКатегоріїПро проєкт

В чому різниця <%, <%=, <%# та -%> у ERB шаблонах (Ruby on Rails)?

У ERB (Embedded Ruby, *.erb файли) шаблонах, які використовуються в Ruby on Rails, є теги, що визначають різні типи вбудованого коду: 
<%
<%=
<%#
-%>
Вони мають наступні значення:
  • <% - цей тег використовується для вставки рубі-коду без виведення результату. Він використовується для логіки та умовних виразів. Наприклад, ви можете використовувати його для створення циклу або умовного оператора без прямого виведення результату.
  • <%= - цей тег використовується для вставки рубі-коду з виведенням результату. Він використовується для вставки значення змінної або результату виразу безпосередньо у вихідний HTML-код. Наприклад, ви можете використовувати його для виведення значення змінної на сторінку.
  • <%# - цей тег використовується для ігнорування рубі-коду (ERB comment) при виконанні шаблону. Все, що міститься між <%# та %>, буде ігноруватися і не виводитиметься у вихідний HTML-код. Це корисно, коли ви хочете залишити коментарі або тимчасово відключити певну частину коду (під час налагодження (debugging, дебагінг)).
Наприклад:
<% if condition %>
  <%= variable %>
<% else %>
  <%# закоментована частина %>
<% end -%>
  • -%> - Цей тег використовується для забезпечення контролю над простором після закриваючого тегу. Він використовується для видалення зайвого пробілу або символів нового рядка, які зазвичай додаються після тегу %>
Наприклад:
 <% 1 + 1 -%>
виведе `2` без додавання пробілу чи символу нового рядка після нього.
Підказки:
<% %>  : Виконує код ruby
<%= %> : Виводить передане значення у ERB шаблон
<% -%> : Видаляє пробіли або символи нового рядка після виразу
<%# %> : Коментування коду
03.05.2023 18:48

Як отримати випадкове логічне значення true чи false у Ruby?

meme code
meme code@memecode
06.05.2023 09:19

Як відключити File Upload в Trix редакторі?

meme code
meme code@memecode
10.05.2023 17:40

Як використовувати кольори шістнадцяткового коду CSS з альфа значенням?

meme code
meme code@memecode
16.05.2023 20:02

Що таке Origin у Git?

meme code
meme code@memecode
16.05.2023 22:17

Як видалити проміжок між inline та inline-block елементами?

meme code
meme code@memecode
17.05.2023 18:52

Що таке loop у Javascript? Як працють цикли for та while у Javascript?

meme code
meme code@memecode
23.05.2023 06:57

Що таке дебагінг (debugging)?

meme code
meme code@memecode
23.05.2023 07:41

Що таке attr_accessor, attr_reader та attr_writer у Ruby? Для чого вони потрібні?

meme code
meme code@memecode
23.05.2023 11:16

Як працює has_many through зв'язок (many to many) у Ruby on Rails?

meme code
meme code@memecode
24.05.2023 18:53

Що таке joins у Ruby on Rails та як це працює?

meme code
meme code@memecode
02.06.2023 06:42

Помилка додавання людей до Google Family. Не вдалося завантажити сторінку.

meme code
meme code@memecode
02.06.2023 12:53

Що робить super у Ruby?

meme code
meme code@memecode