Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Ruby: Общие вопросы > Вопрос по синтаксису


Автор: Itrch 8.2.2007, 11:09
Код
 <td> <%= link_to link_to stp.vid.name + stp.name, :action => "show", :id => stp.id %></td>


Выводит значения слитно (stp.vid.namestp.name), нужно вставить пробел (stp.vid.name stp.name).  Есть решения? 

Автор: skalex 8.2.2007, 13:23
Код
link_to link_to stp.vid.name + " " + stp.name

так?  smile 

Автор: Itrch 8.2.2007, 14:43
Нет  smile  пробовал уже:

Код
 undefined method `+@' for " ":String 


Автор: Зверек 8.2.2007, 15:16
В Руби в некоторых случаях пробелы являются значащими:
Код

link_to link_to stp.vid.name +" " + stp.name #выдаст ошибку
link_to link_to stp.vid.name + " " + stp.name #даст искомый результат

Вся разница - пробел между плюсом и " ".
Если не поставить пробел, то "+" считается унарным оператором "плюс".

Автор: Itrch 15.2.2007, 10:55
Цитата(Зверек @  8.2.2007,  15:16 Найти цитируемый пост)
Вся разница - пробел между плюсом и " ".
Если не поставить пробел, то "+" считается унарным оператором "плюс".


Точно, спасибо!
Окончательный вид:
Код
<td> <%= link_to stp.vid.name + " " + stp.name, :action => "show", :id =>stp.id %></td>

Автор: rubyroid 19.2.2007, 21:12
А как реализовать такую конструкцию например 
Код

if (rubylo1 == otchen_dlinnoe_virazenie1 && rubilo2 == otchen_dlinnoe_virazenie2 && rubilo3 == otchen_dlinnoe_virazenie3)  do ...


вот так 

Код

if (rubylo1 == otchen_dlinnoe_virazenie1
       && rubilo2 == otchen_dlinnoe_virazenie2
       && rubilo3 == otchen_dlinnoe_virazenie3)  do
       puts "Ruby Rubli!"
end


То есть как сделать переносы чтоб не умещать выражение в одну строку ???

Автор: setq 20.2.2007, 08:56
Обратный слэш в конце строки (?) или ставить знак операции в конце строки (?)

Наверно.

Автор: V.A.KeRneL 20.2.2007, 11:15
Да, только не «do», а «then» тогда уж. 
(Просто disambiguation с моей стороны).

Автор: PFOcChKen 21.2.2007, 13:36
Наверное как-то так:


Код


puts "AAA" if rubylo1 == otchen_dlinnoe_virazenie1 &&
                     rubilo2 == otchen_dlinnoe_virazenie2...


Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)