Запись в ответ в Rails? (Как "эхо" в PHP) - PullRequest
15 голосов
/ 02 февраля 2009

Я знаю, что могу сделать это в Rails:

<%="hello" %>

но есть ли способ сделать это

<%
echo "hello"
%>

и заставить его отображаться в ответе?

Ответы [ 4 ]

15 голосов
/ 03 февраля 2009

Вы пробовали concat.

Я видел это, когда бродил в документации по Rails. Совершенно не уверен, так как я новичок в Rails.

13 голосов
/ 03 февраля 2009

То, что вы должны написать, это

<% concat "bank" %>

теперь вы можете сделать что-то вроде

<%
  10.times do
    concat "cat"
  end
%>

за десять кошек

6 голосов
/ 29 декабря 2010

Используйте concat, я пробовал, и это работает. Однако, если вам нужно использовать символы HTML, используйте:

concat(sanitize("STRING"))

или откройте app/helpers/application_helper.rb и напишите:

def echo(str)
    concat sanitize str
end

, поэтому вы можете просто набрать: echo "hello<br />\n"

0 голосов
/ 02 февраля 2009

Вы ищете «печатать» или «ставить», в зависимости от того, хотите ли вы новую строку (вероятно, нет). Почти каждый объект реализует .to_s, который также работает, хотя я чувствую, что, вероятно, есть лучший способ сделать то, что вы пытаетесь сделать. Есть еще какой-нибудь контекст по этому поводу?

...