Haml: μΆ”κ°€ 곡백은 μž…λ ₯ ν•„λ“œμ˜ μ—¬λŸ¬ 쀄 값을 μˆ˜μ •ν•©λ‹ˆλ‹€.

에 λ§Œλ“  2015λ…„ 01μ›” 21일  Β·  6μ½”λ©˜νŠΈ  Β·  좜처: haml/haml

λ‚΄ 개발 ν™˜κ²½μ—μ„œμ™€ 같이 ugly μ˜΅μ…˜μ΄ false 둜 μ„€μ •λ˜μ–΄ μžˆμ„ λ•Œ HAML 4.0.6, Rails 4.1.8 및 Rails 4.2.0을 μ‚¬μš©ν•  λ•Œ λ¬Έμ œκ°€ λ°œμƒν–ˆμŠ΅λ‹ˆλ‹€.

μ—¬κΈ°μ—λŠ” <input> νƒœκ·Έμ— λŒ€ν•œ μ—¬λŸ¬ 쀄 λ¬Έμžμ—΄ 값이 μ±„μ›Œμ§€κ³  μ›λž˜ 값을 μˆ˜μ •ν•˜λŠ” μž‘μ—…μ΄ ν¬ν•¨λ©λ‹ˆλ‹€.

μ„€λͺ…ν•˜κΈ°κ°€ μ’€ μ–΄λ €μ›Œμ„œ 이 λ™μž‘μ„ ν¬ν•¨ν•˜λŠ” μž‘μ€ μ €μž₯μ†Œλ₯Ό λ§Œλ“€μ—ˆμŠ΅λ‹ˆλ‹€.

μ—¬λŸ¬ 쀄 λ¬Έμžμ—΄μ΄ μžˆμŠ΅λ‹ˆλ‹€.
https://github.com/kyletolle/haml_playground/blob/master/app/models/tester.rb#L3

<<eos
This is a
multiline string,
which is helpful

for testing!
eos

μˆ¨κ²¨μ§„ μž…λ ₯ ν•„λ“œμ˜ κ°’μœΌλ‘œ μ‚¬μš©ν•˜λŠ” 것:
https://github.com/kyletolle/haml_playground/blob/master/app/views/testers/_form.html.haml#L13

λ‚΄ 개발 ν™˜κ²½μ—μ„œ HAMLμ—λŠ” ugly μ˜΅μ…˜μ΄ false 둜 μ„€μ •λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. 즉, 가독성을 μœ„ν•΄ λͺ¨λ“  좜λ ₯을 곡백으둜 μ±„μ›λ‹ˆλ‹€.

단, μ—¬λŸ¬ 쀄 λ¬Έμžμ—΄μΈ 경우 value μ†μ„±μ˜ 일뢀인 쀄도 μ±„μ›λ‹ˆλ‹€. λ”°λΌμ„œ 결과적으둜 μž…λ ₯에 λ„£λŠ” 값을 μˆ˜μ •ν•˜κ²Œ λ©λ‹ˆλ‹€.
haml-quirk

μ—¬κΈ°μ—μ„œ μ‹€μ œ 좜λ ₯κ³Ό μ˜ˆμƒ 좜λ ₯을 λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.
https://gist.github.com/kyletolle/b878f2e6de3100be9379

Herokuμ—μ„œ μ‹€ν–‰ 쀑인 μ˜ˆμ œλ„ μžˆμœΌλ―€λ‘œ 진행 쀑인 것을 λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€.
https://haml-playground.herokuapp.com/testers/new

문제λ₯Ό κ°•μ‘°ν•˜κΈ° μœ„ν•΄ μˆ¨κ²¨μ§„ μž…λ ₯ ν•„λ“œμ˜ 값을 가져와 ν…μŠ€νŠΈ μ˜μ—­μ— λ„£μŠ΅λ‹ˆλ‹€. ν…μŠ€νŠΈ μ˜μ—­μ—μ„œ μΆ”κ°€ 곡백을 λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€. λ”°λΌμ„œ ν…μŠ€νŠΈ μ˜μ—­μ— 좜λ ₯될 κ²ƒμœΌλ‘œ μ˜ˆμƒλ˜λŠ” λ¬Έμžμ—΄μ€ 이 μΆ”κ°€ 곡백으둜 인해 μ‹€μ œλ‘œ μ‘΄μž¬ν•˜λŠ” λ¬Έμžμ—΄μ΄ μ•„λ‹™λ‹ˆλ‹€.

가독성을 μœ„ν•΄ λ§ˆν¬μ—…μ„ μ±„μš°μ§€ μ•ŠκΈ° λ•Œλ¬Έμ— ν”„λ‘œλ•μ…˜μ—μ„œλŠ” λ¬Έμ œκ°€ λ˜μ§€ μ•ŠμŠ΅λ‹ˆλ‹€. ugly μ˜΅μ…˜μ€ true λ©λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ λ‚˜λŠ” κ°œλ°œν•˜λŠ” λ™μ•ˆ 그것을 λ§Œλ‚œλ‹€.

이것이 μ˜ˆμƒλœ λ™μž‘μž…λ‹ˆκΉŒ? μ•„λ‹ˆλ©΄ 이것이 λ²„κ·Έμž…λ‹ˆκΉŒ? μ‹€μ œλ‘œ 데이터λ₯Ό μˆ˜μ •ν•˜κ³  있기 λ•Œλ¬Έμ— λ²„κ·Έμ²˜λŸΌ λŠκ»΄μ§‘λ‹ˆλ‹€.

λ˜ν•œ ν•΄κ²° 방법이 μžˆμŠ΅λ‹ˆκΉŒ? λ‚˜λŠ” 읽을 수 μžˆλŠ” λ§ˆν¬μ—…μ„ κ°–λŠ” 것을 μ’‹μ•„ν•˜λ―€λ‘œ ugly λ₯Ό false λ™μΌν•˜κ²Œ μœ μ§€ν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€. κ·ΈλŸ¬λ‚˜ μ—¬λŸ¬ 쀄 λ¬Έμžμ—΄ 값이 곡백으둜 μ±„μ›Œμ§€μ§€ μ•Šλ„λ‘ ν•˜λŠ” λ‹€λ₯Έ 방법이 μžˆλŠ”μ§€ κΆκΈˆν•©λ‹ˆλ‹€.

λ‚˜λŠ” #643을 λ³΄μ•˜λŠ”λ°, 이것과 같은 곡간에 μžˆλŠ” 것 κ°™λ‹€.

더 λ§Žμ€ 정보λ₯Ό μ œκ³΅ν•  수 있으면 μ•Œλ €μ£Όμ„Έμš”.

HAML둜 ν•˜μ‹  λͺ¨λ“  μž‘μ—…μ— κ°μ‚¬λ“œλ¦½λ‹ˆλ‹€!

κ°€μž₯ μœ μš©ν•œ λŒ“κΈ€

λ‚˜λŠ” 이것을 μš°μ—°νžˆ λ°œκ²¬ν–ˆμŠ΅λ‹ˆλ‹€. λ‚˜λ₯Ό μœ„ν•΄ 고친 것은 = λŒ€μ‹  ~λ₯Ό μ‚¬μš©ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. 예:

.col-md-2~ f.text_area :script, class: "form-control"

λŒ€μ‹ μ—

.col-md-2= f.text_area :script, class: "form-control"

FAQ μ—μ„œ 정보λ₯Ό μ°Ύμ•˜μŠ΅λ‹ˆλ‹€.

λͺ¨λ“  6 λŒ“κΈ€

λ‹€μŒμ€ ν…μŠ€νŠΈ μ˜μ—­μ—μ„œ μΆ”κ°€ 곡간이 μ–΄λ–»κ²Œ λ³΄μ΄λŠ”μ§€μ— λŒ€ν•œ μΆ”κ°€ μŠ€ν¬λ¦°μƒ·μž…λ‹ˆλ‹€.

screenshot 2015-01-20 17 43 40

같은 λ¬Έμ œκ°€ μžˆμŠ΅λ‹ˆλ‹€.
λ‚΄ μ†”λ£¨μ…˜μ€ ν…μŠ€νŠΈ ν•„λ“œλ₯Ό ν…μŠ€νŠΈ μ˜μ—­μœΌλ‘œ λ³€κ²½ν•˜κ³  ν•΄λ‹Ή 클래슀λ₯Ό μˆ¨κΉ€μœΌλ‘œ μ„€μ •ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€.

이것은 버그 # 506의 λ³€ν˜•μ΄λ©° 개발 λͺ¨λ“œμ—μ„œ 이것이 μˆ˜μ •λ˜μ§€ μ•Šμ€ μ΄μœ λŠ” λ¬΄μ—‡μž…λ‹ˆκΉŒ? μ΅œμ†Œν•œ λ¬Έμ„œμ—¬μ•Ό ν•©λ‹ˆλ‹€. 읽어보기에 ν•œ 쀄을 μΆ”κ°€ν•΄μ•Ό ν•©λ‹ˆκΉŒ?

λΉ„μŠ·ν•œ λ¬Έμ œκ°€ μžˆμ—ˆμŠ΅λ‹ˆλ‹€(여기에 보고됨 http://stackoverflow.com/questions/34804880/weird-behavior-on-form-data-signature-with-a-get-request/34805154). 이것은 λ‚΄ 문제λ₯Ό ν•΄κ²°ν•˜λŠ” 데 λ„μ›€μ΄λ˜μ—ˆμŠ΅λ‹ˆλ‹€. 감사 ν•΄μš”

λ‚˜λŠ” 이것을 μš°μ—°νžˆ λ°œκ²¬ν–ˆμŠ΅λ‹ˆλ‹€. λ‚˜λ₯Ό μœ„ν•΄ 고친 것은 = λŒ€μ‹  ~λ₯Ό μ‚¬μš©ν•˜λŠ” κ²ƒμž…λ‹ˆλ‹€. 예:

.col-md-2~ f.text_area :script, class: "form-control"

λŒ€μ‹ μ—

.col-md-2= f.text_area :script, class: "form-control"

FAQ μ—μ„œ 정보λ₯Ό μ°Ύμ•˜μŠ΅λ‹ˆλ‹€.

이것은 ugly: false κ°€ μ—†λŠ” Haml 5에 μ˜ν•΄ 해결될 수 μžˆμŠ΅λ‹ˆλ‹€. Haml 5.0.0.beta.2λ₯Ό μ‚¬μš©ν•΄ λ³΄μ‹­μ‹œμ˜€.

그리고 https://github.com/haml/haml/issues/828#issuecomment -217467178에 μ„€λͺ…λœ 일뢀 μ—°μ‚°μžκ°€ 도움이 될 수 μžˆμŠ΅λ‹ˆλ‹€.

이 νŽ˜μ΄μ§€κ°€ 도움이 λ˜μ—ˆλ‚˜μš”?
0 / 5 - 0 λ“±κΈ‰