반응형
Haml에서 if 조건을 작성하는 방법은 무엇입니까?
어떻게 작성 if
하고 if
- else
루비 레일에 응용 프로그램 HAML의 문을?
HAML은 들여 쓰기를 기반으로하며 파서가 까다로울 수 있습니다. Haml에서 "-end"를 사용할 필요가 없습니다. 대신 들여 쓰기를 사용하십시오. Haml에서는 Ruby 평가 명령 후 들여 쓰기가 증가 할 때마다 블록이 시작됩니다. 들여 쓰기가 감소하면 종료되며, else 블록이면 다음과 같이 샘플합니다.
- if condition
= something
- else
= something_else
실용적인 예
- if current_user
= link_to 'Logout', logout_path
- else
= link_to 'Login', login_path
편집 : if 조건 만 사용하고 싶다면
- if current_user
= link_to 'Logout', logout_path
haml에서는 두 개의 연산자가 루비 코드에 사용됩니다.
=
평가되어 문서에 삽입되는 루비 코드에 사용됩니다.
예:
= form_for @user
-
평가되고 문서에 삽입되지 않는 루비 코드에 사용됩니다.
예:
- if @user.signed_in?
= "Hi"
- else
= "Please sign in!"
haml에서 -
(대시)를 사용하여 한 줄이 Ruby 코드임을 나타냅니다. 또한 들여 쓰기 수준은 블록 수준을 나타냅니다. if / else 문에 대해 두 가지를 결합하십시오.
- if signed_in?
%li= link_to "Sign out", sign_out_path
- else
%li= link_to "Sign in", sign_in_path
ERB의 다음 코드와 동일합니다.
<% if signed_in? %>
<li><%= link_to "Sign out", sign_out_path %></li>
<% else %>
<li><%= link_to "Sign in", sign_in_path %></li>
<% end %>
태그 안에 조건을 넣으려면
%section{:class => "#{'new-class' if controller.action_name == 'index'}"}
다음은 두 개의 링크입니다.
첫 번째는 변환기입니다. html 또는 erb 스 니펫을 입력하면 haml을 얻을 수 있습니다!
참고 URL : https://stackoverflow.com/questions/8026619/how-to-write-if-condition-in-haml
반응형
'Nice programing' 카테고리의 다른 글
izip 대신 zip을 사용하는 것이 더 좋은 때는 언제입니까? (0) | 2020.10.26 |
---|---|
심볼릭 링크를 제거하려면 어떻게합니까? (0) | 2020.10.26 |
CSS 미디어 쿼리-소프트 키보드가 CSS 방향 규칙을 위반 함-대체 솔루션? (0) | 2020.10.26 |
하나의 log4j 구성 파일로 2 개의 별도 로그 파일을 생성하려면 어떻게해야합니까? (0) | 2020.10.26 |
만드는 방법 (0) | 2020.10.26 |