8

我无法理解基本的 Slim 语法。

第一个问题,如何输入新行(换行符)?

第二个请求,您能否重写以下代码段,我怀疑我没有做到这一点?

- provide(:title, @course.title)                                                                                                          

.row
  aside.span4
    section
      h1 = @course.title.capitalize

      => link_to t('ui.edit'), edit_course_path(@course)
      '|
      => link_to t('ui.back'), courses_path

      p
        b #{t('activerecord.attributes.subject.title')}:
        | #{@course.subject.title}

      p
        b #{t('activerecord.attributes.student_level.title')}:
        | #{@course.student_level.title}

      h4 #{t('activerecord.attributes.course.objectives')}
      = @course.objectives

这是它的输出:

标题一

解放(编辑) | 奥卡加

Predmet nomi:英语 5-7 岁

O'quvchi darajasi:初学者

Kurs haqida ma'lumot

目标 b

4

3 回答 3

10

对于新行,您应该只使用 br ,例如:

h1 Line1 content
br
h1 Line2 content

关于上面提到的代码,可以这样重写:

-provide(:title,@course.title)                                                    
.row
  aside.span4
    section
      h1 = @course.title.capitalize

      = link_to t('ui.edit'), edit_course_path(@course)
      '|
      = link_to t('ui.back'), courses_path

      p
        b = t('activerecord.attributes.subject.title')
        |:     
        = @course.subject.title

      p
        b = t('activerecord.attributes.student_level.title')
        |: 
        = @course.student_level.title

      h4 = t('activerecord.attributes.course.objectives')
      = @course.objectives
于 2013-09-18T16:21:49.240 回答
5

要将br标签插入到 slim 中的某个标签中:

示例 1.超薄模板:

h1
  | Hello
  br
  | world

它将产生html:

<h1>Hello<br>world</h1>

示例 2.显示表单的 slim 模板片段:

p
  = f.label :title
  br
  = f.text_field :title

它将产生html:

<p>
  <label for="question_title">Title</label><br>
  <input name="question[title]" id="question_title" type="text">
</p>
于 2017-06-11T11:56:36.257 回答
-2

我必须不同意这一点。我一直使用它$/,原因如下:

  • br由于可能导致问题的边缘情况,该标签已过时并且变得不那么优先。$/相比之下,使用没有任何影响。
  • 它不是完全标准化的,并且已经存在导致问题的情况(谷歌)。
  • 实际的 W3 规范为此标签定义了非常特殊的用例和规定。坦率地说,我们已经超出了必须过度思考或跳过箍以在 HTML 输出中呈现换行符的地步——这是我的观点!
  • 最后,我发现这是最令人信服的原因:**using$/总体上更惯用,因为我们使用的是 ruby​​ 库。它是完全不可知的,也可以与其他模式相匹配,而无需打印额外标签的开销。

这是我在几个实时项目中使用的“真实世界”示例:conditional-html-tags.rb

于 2020-07-10T07:12:39.087 回答