Sizin için kolay bir tane var.raylar delete_if mevcut makaleyi yok saymak için hashları kullanarak (Middleman)
<% blog(content).articles.delete_if{|item| item == current_article}.each do |article| %>
<%= article_content %>
<% end %>
ben yani don Middleman proxy kullanıyorum Ancak:
Ben şimdiki makale
Yani bu delete_if
ile Middleman Blog kullanarak çalışır HARİÇ bir özellikli içerik bölümünü istiyorum current_article
yöntemine erişiminiz var ...
Aşağıdaki sahte verileri (diğerleri arasında) içeren bir YAML yapısı var. gibi tup: veri> Site> casestudy> RASTGELE-ID423536.yaml (a CMS tarafından Oluşturulan) Eğer böyle şeyler bulacaksınız her yaml
dosyası içinde
:
:id: 2k1YccJrQsKE2siSO6o6ac
:title: Heyplace
Benim config.rb
Benim şablon dosyası aşağıdaki tutan bu
data.site.caseStudy.each do | id, this |
proxy "/cases/#{this.slug}/index.html", "/cases/cases-template.html", :locals => { this: this }, :ignore => true
end
benziyor Geçerli makale isnt görüntülenen böylece içeriği alır
<%= partial(:'partials/footer', :locals => {:content => data.site.caseStudy, :title => 'See more projects'}) %>
Benim döngü
<% content.each do |id, this| %>
<%= partial "partials/tile" %>
<% end %>
Yani, nasıl bu durumda delete_if
kullanabilirsiniz benim soru şu?
ben ama boşuna, gibi şeyler denedim:
<% content.delete_if{|e| e.title == content.title}.each do |id, this| %>
<%= partial "partials/tile" %>
<% end %>
Herhangi bir yardım takdir! Teşekkür ederim!
çözüldü, ben contentful_middleman sürdürme olduğum @ David Litvak
Merhaba David, bana yardım etmek için zaman ayırdığınız için teşekkürler. Bunu kabaca (karmaşadan) karmalarla nasıl yapacağımı biliyor musunuz? Bunun nasıl yapıldığına aşina değilim. Diziler ile biraz daha kolay –
Aşağıdaki tür çalıştı, ancak şimdi önbellekte siliniyor. Karoları yeniden görmek için sayfayı birkaç kez yeniden yüklemem gerekiyor. Çok garip '<% content.reject {| anahtar, değer | anahtar> = this.id} .sort_by {| index | rand} .each do | id, bu | %> <% = kısmi "kısmi/kiremit"%> <% end %> ' –