2013-05-22 16 views
5

Witam facetów Buduję aplikację ruby ​​na szynach za pomocą prostego formularza i haml dla widoków. Zauważyłem jednak problem dotyczący formularzy z tekstem. Początkowo nie zauważyłem tego jednak, gdy zapisałem tekst w polu tekstowym i zrzuciłem go w znaczniku wstępnym. Zauważyłem, że po każdym łamaniu linii występuje wiele brzydkich białych przestrzeni. Nie jestem pewien co się tutaj dzieje. Więc jeśli wprowadzić coś jak poniżej w textarea:Dane wejściowe z textarea mają dziwne przestrzenie przed każdą kolejną linią w prostej formie i haml

THIS IS ONE LINE 
THIS IS ANOTHER LINE 
THIS SHOULD NOT BE INDENTED 
    THIS SHOULD BE INDENTED BY TWO SPACES 

wyprowadzanie go na pre tag daje:

THIS IS ONE LINE 
    THIS IS ANOTHER LINE 
    THIS SHOULD NOT BE INDENTED 
    THIS SHOULD BE INDENTED BY TWO SPACES 

jestem całkiem zagubiony tutaj - to jest mój podstawowy kod textarea - niewiele (dodane tyldy po zapoznaniu się, że to pomoże w usuwaniu niechcianych spacji - nie działa w ogóle):

~f.input :details, :label=>false, :input_html=>{:class=>'span12 input-code', :rows=>40} 

anothe r obserwacja - spacje nie pojawiają się w obszarze tekstowym, jeśli renderuję obszar tekstu za pomocą prostego formularza - jednak jeśli ręcznie zakodowuję w polu tekstowym, aby wyświetlić zawartość, to pokazuje ona spacje. Czy to może mieć coś wspólnego z klejnotem simpleForm?

+0

Czy dbasz o przygotowanie minimalny szyn app, który robi tylko to i umieścić go na github (lub gdziekolwiek)? –

+0

Kiedy mówisz "wyprowadzanie w tagu pre", oznacza to, że robi to, co robi Stackoverflow, wypisując tekst podczas pisania? Czy narzędzia programistów wyjaśniają margines? Czy to ze względu na twoje span12 lub reguły kodu wejściowego? – Trip

+0

Sprawdziłem i wszystkie spacje - span12 i kod wejściowy to tylko klasy css - jak mogą wpływać? – Ali

Odpowiedz

5

Wiem, że to bardzo stary post, ale ja przyszedłem tutaj szuka rozwiązania do tej samej kwestii tak myślałem na dzielenie rozwiązanie znalazłem na innym linku w przypadku gdy ktoś przychodzi tu zbyt ...

Dla mnie stało się to w mojej aplikacji Rails 5, która używa simple_form i HAML.

Powodem dodatkowych pomieszczeń jest haml, aw celu ich uniknąć, trzeba dodać do config/inicjalizatorów/haml.rb następujący wiersz:

Haml::Template.options[:remove_whitespace] = true 

Tu jest źródło mojej odpowiedzi (sprawdź bardzo ostatni komentarz adavia): https://github.com/haml/haml/issues/643

I tak na wszelki wypadek, oto lista opcji haml umożliwia: http://haml.info/docs/yardoc/Haml/Options.html

Edit

Opcja ta działa również:

Haml::Template.options[:ugly] = true 
+0

Miałem białe spacje w pustych tekstach dynamicznie generowanych przez kokon w formie zagnieżdżonej (Rails 5, haml, simple_form, cocoon). Po odpowiedzi naprawiłeś to. Te pytania i komentarze pomagają na długo po ich opublikowaniu! – Arta

+0

cieszę się, że pomogło! – Marco