请原谅我。我绝对是 Haml 和 Ruby on Rails 的初学者。无论如何,我有一个 Web 应用程序,在页面顶部,我正在跟踪页面上的各种元素。呈现该页面的代码如下:
- if @item_collection.is_a?(Feature)
= render 'edit_fields', :f => f
- else
= render 'fields', :f => f
对于我的页面,将执行 else 子句。我的页面背后的代码是:
.field.large
= f.label :name, nil, 'data-help-id' => 'page_name'
= f.text_field :name, disabled_if_unauthorized(@item_collection, :maxlength => 255, :title => "Edit Page")
= f.error_message_on(:name, :css_class => 'error_message')
.field
= f.label :path, nil, 'data-help-id' => 'page_path'
= f.text_field :path, disabled_if_unauthorized(@item_collection, { :maxlength => 255, :class => 'extra_margin', :title => "Edit Page" })
= f.error_message_on(:path, :css_class => 'error_message')
.field.info
= f.label 'Info'
%ul.elements_count
%li.elements_in_use{ :id => 'elements_in_use'}
%li.unused_elements{ :id => 'unused_elements'}
%li.undefined_elements{ :id => 'undefined_elements'}
单击“保存”按钮时,无序列表(elements_count)消失。我知道这是因为我没有“f”。在那些元素面前。问题是,再一次,原谅我,因为我只是一个初学者,输入“f”。由于 %ul 和 %li 不是 Rails 字段帮助器,因此在列表元素前面将不起作用。有谁知道我可以做些什么来让这些列表元素不再消失?谢谢!