如何在Alchemy CMS中显示具有相同标签的元素?

时间:2015-12-01 07:17:10

标签: tags alchemy-cms

如何在Alchemy CMS中显示具有相同标签的元素?

我用标签"逻辑"标记了一些元素。现在,我想在另一个页面上显示带有此标记的最新元素。这有代码行吗?例如:

 <%= render_elements :from_tag => 'logic' %> 

1 个答案:

答案 0 :(得分:1)

您无法在此处使用render_elements助手。

但你可以使用普通的&#39; Rails和render_element助手:

<% @page.elements.available.tagged_with('logic').each do |element| %>
  <%= render_element element %>
<% end %>

或者,如果没有render_element助手,您只需使用以下内容渲染视图:

<% @page.elements.available.tagged_with('logic').each do |element| %>
  <%= render element %>
<% end %>

但要注意,然后您需要在元素视图中使用元素的部分名称作为本地对象,因为Rails使用部分名称作为默认本地对象。因此,例如,名为article且名为_article_view的视图部分的元素具有名为article_view的本地对象。

如果您想保留Alchemy元素生成器的默认本地element对象,您仍然可以将其传递到视图中:

<% @page.elements.available.tagged_with('logic').each do |element| %>
  <%= render element, element: element %>
<% end %>

但这看起来有点奇怪,我更喜欢使用render_element助手,或者在元素视图中重命名本地对象。