如何使Alchemy CMS元素生成HTML列表

时间:2017-02-02 08:17:06

标签: html ruby-on-rails html-lists alchemy-cms

我正在尝试创建一个Alchemy CMS元素,它会生成一个HTML列表作为结果。有问题的元素是一个导航栏,我希望将其结构化为HTML中的列表,因为这就是我想要使用的CSS。例如,我想在config/alchemy/elements.yml

中指定一个这样的元素
- name: navbar
  unique: false
  nestable_elements: [navitem]
  contents:
  - name: logo # There's also a logo in this navbar
    type: EssencePicture

- name: navitem
  contents:
    - name: navitem_content
      type: EssenceText
      settings:
        linkable: true

然后让这个navbar元素成为生成的实际HTML中的<li>。不幸的是,这种事情对我来说还不起作用,因为生成的navbar(封装了徽标和导航项)实际上是<div>。我不确定如何将给定的Alchemy元素更改为<div>以外的类型(显然,在这种情况下,我希望它是<li>)。

到目前为止我唯一看到可能为我想做的事情而工作的是创建一个类型为EssenceHtml的Essence。但是,我不认为这是足够的,因为我试图将其他元素/精华嵌入其中(我认为不适用于Essences),这似乎只是发出静态的原始HTML。 / p>

所以,我想我问的最好的方法是创建一个具有我想要的标签类型的Alchemy元素(在这种情况下,是<li>),它还包含其他元素。

1 个答案:

答案 0 :(得分:1)

根据the documentation element_view_for,助手有一个tag选项。

刚刚通过tag: 'li',你们都很好。