Это правильный способ отображения / объединения текста с использованием Haml? - PullRequest
7 голосов
/ 19 июня 2011

Я очень новичок в Ruby on Rails, и еще новее в Haml, я начал использовать его 2 часа назад. Поэтому я следую учебнику по Ruby on Rails и решил использовать Haml для представлений, но я не уверен, что это правильный способ отображения вещей (это кажется странным). Может ли кто-нибудь просветить меня? :)

%h1= "About Us"
%p
  =link_to 'Ruby on Rails Tutorial','http://railstutorial.org' 
  &= 'is a project to make a book and screencasts to teach web development with'
  &= link_to 'Ruby on Rails', 'http://rubyonrails.org'
  &= '. This is the sample application for the tutorial.'

Я тоже это пробовал:

:ruby
   first_link = link_to 'Ruby on Rails Tutorial','http://railstutorial.org' 
   second_link = link_to 'Ruby on Rails', 'http://rubyonrails.org'

%h1= "About Us"
%p
  = first_link
  &= 'is a project to make a book and screencasts to teach web development with'
  &= second_link
  &= '. This is the sample application for the tutorial.'

1 Ответ

11 голосов
/ 19 июня 2011

Вы можете использовать #{}, чтобы обернуть рубиновый код в блок текста, и если вы просто хотите текст (как в вашем %h1), вам не нужно использовать =.

%h1 About Us
%p
  #{link_to 'Ruby on Rails Tutorial','http://railstutorial.org'} is a project to make a book and screencasts to teach web development with #{link_to 'Ruby on Rails', 'http://rubyonrails.org'}. This is the sample application for the tutorial.

Если вы хотите разбить строку, чтобы ее было легче обрабатывать в вашем редакторе, убедитесь, что вы делаете отступ каждой строке на одинаковое количество и не разбиваетесь в середине функции Ruby:

%h1 About Us
%p
  #{link_to 'Ruby on Rails Tutorial','http://railstutorial.org'} is a project to make a
  book and screencasts to teach web development with #{link_to 'Ruby on Rails', 'http://rubyonrails.org'}.
  This is the sample application for the tutorial.
...