Rails & Slim: autoclosed 标签不获取内容
Rails & Slim: autoclosed tag does not fetch content
我有这个模板:
div class="col-md-offset-4 col-md-16"
- if @campaign.errors.any?
ul
- @campaign.errors.full_messages.each do |e|
li |e
= form_for @campaign do |f|
div.form-group
= f.label :name, class: "control-label"
= f.text_field :name, class: "form-control"
div.form-group
= f.label :ad_link, class: "control-label"
= f.text_field :link, class: "form-control"
div.form-group
= f.label :image, class: "control-label"
= f.file_field :campaign_image, class: "file"
div.form-group
= f.submit "Create campaign"
呈现以下 html:
<div class="col-md-offset-4 col-md-16"></div>
<form ...> </form>
所以它让我清空 div 并在下面形成表格,而不是在 div 内部形成表格。
我试图通过插入通常的 html:
来解决它
<div class="col-md-offset-4 col-md-16">
- if @campaign.errors.any?
ul
- @campaign.errors.full_messages.each do |e|
li |e
= form_for @campaign do |f|
div.form-group
= f.label :name, class: "control-label"
= f.text_field :name, class: "form-control"
div.form-group
= f.label :ad_link, class: "control-label"
= f.text_field :link, class: "form-control"
div.form-group
= f.label :image, class: "control-label"
= f.file_field :campaign_image, class: "file"
div.form-group
= f.submit "Create campaign"
</div>
但结果出现了一些奇怪的输出,表单标签开始内联 div 并且没有捕获任何字段或提交按钮。
缩进在 slim
中非常重要。查看 there 文档。所以,你必须这样写:
div class="col-md-offset-4 col-md-16"
|
- if @campaign.errors.any?
ul
- @campaign.errors.full_messages.each do |e|
li |e
= form_for @campaign do |f|
div.form-group
= f.label :name, class: "control-label"
= f.text_field :name, class: "form-control"
div.form-group
= f.label :ad_link, class: "control-label"
= f.text_field :link, class: "form-control"
div.form-group
= f.label :image, class: "control-label"
= f.file_field :campaign_image, class: "file"
div.form-group
= f.submit "Create campaign"
我有这个模板:
div class="col-md-offset-4 col-md-16"
- if @campaign.errors.any?
ul
- @campaign.errors.full_messages.each do |e|
li |e
= form_for @campaign do |f|
div.form-group
= f.label :name, class: "control-label"
= f.text_field :name, class: "form-control"
div.form-group
= f.label :ad_link, class: "control-label"
= f.text_field :link, class: "form-control"
div.form-group
= f.label :image, class: "control-label"
= f.file_field :campaign_image, class: "file"
div.form-group
= f.submit "Create campaign"
呈现以下 html:
<div class="col-md-offset-4 col-md-16"></div>
<form ...> </form>
所以它让我清空 div 并在下面形成表格,而不是在 div 内部形成表格。
我试图通过插入通常的 html:
来解决它<div class="col-md-offset-4 col-md-16">
- if @campaign.errors.any?
ul
- @campaign.errors.full_messages.each do |e|
li |e
= form_for @campaign do |f|
div.form-group
= f.label :name, class: "control-label"
= f.text_field :name, class: "form-control"
div.form-group
= f.label :ad_link, class: "control-label"
= f.text_field :link, class: "form-control"
div.form-group
= f.label :image, class: "control-label"
= f.file_field :campaign_image, class: "file"
div.form-group
= f.submit "Create campaign"
</div>
但结果出现了一些奇怪的输出,表单标签开始内联 div 并且没有捕获任何字段或提交按钮。
缩进在 slim
中非常重要。查看 there 文档。所以,你必须这样写:
div class="col-md-offset-4 col-md-16"
|
- if @campaign.errors.any?
ul
- @campaign.errors.full_messages.each do |e|
li |e
= form_for @campaign do |f|
div.form-group
= f.label :name, class: "control-label"
= f.text_field :name, class: "form-control"
div.form-group
= f.label :ad_link, class: "control-label"
= f.text_field :link, class: "form-control"
div.form-group
= f.label :image, class: "control-label"
= f.file_field :campaign_image, class: "file"
div.form-group
= f.submit "Create campaign"