Рендеринг HTML-формы без использования ERB - PullRequest
0 голосов
/ 28 декабря 2018

В старом тезисе я нашел метод ruby, который выглядит следующим образом:

get "/test" do

  # Render an html form 
  <<-HTML
  <html>
     <!--just some code here-->
  </html>
  HTML
end

Метод напрямую отображает html-форму без каких-либо обращений к файлу erb.Это обычно правильный способ сделать это?Я не нашел ни одного учебника онлайн, который демонстрирует это так.Каждый источник, на который я смотрел, говорит об erb.

Ответы [ 2 ]

0 голосов
/ 28 декабря 2018

Отрывок выглядит как часть приложения на основе Sinatra (облегченный веб-фреймворк ruby, официальный сайт ).

ERB - это язык шаблонов на основе ruby, он довольно популярен благодаряк простоте и скорости, но когда вам не нужны большие отклики или логика при рендеринге, и вы хотите вывести только некоторую строку - вполне допустимо сделать именно это.Нет кода работает быстрее, чем нет кода.

0 голосов
/ 28 декабря 2018

ERB - это HTML, в который добавлен код Ruby, поэтому вы можете сделать что-то вроде

  <tbody>
      <% @books.each do |book| %>
        <tr>
          <td><%= book.title %></td>
          <td><%= book.content %></td>
          <td><%= link_to "Show", book %></td>
          <td><%= link_to "Edit", edit_book_path(book) %></td>
          <td><%= link_to "Destroy", book, method: :delete, data: { confirm: "Are you sure?" } %></td>
        </tr>
      <% end %>
    </tbody>

Вы можете использовать html, если в представлениях не требуется добавлять рубиновую логику.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...