Optimize loading partials as collections (#12276)
* Load events' partials as collections * Load /admin/articles partials as collections * Render sponsorships partial as collection * Render organization articles partials as collection * Load users articles partials as collections
This commit is contained in:
parent
3750ea6544
commit
020912264e
5 changed files with 16 additions and 36 deletions
|
|
@ -130,18 +130,12 @@
|
|||
<div class="col-12">
|
||||
<% if @featured_articles.present? %>
|
||||
<h2>Manually Featured Articles</h2>
|
||||
<% @featured_articles.each do |article| %>
|
||||
<%= render "individual_article", article: article %>
|
||||
<% end %>
|
||||
<%= render partial: "individual_article", collection: @featured_articles, as: :article %>
|
||||
<% end %>
|
||||
</div>
|
||||
<div class="col-12">
|
||||
<%= paginate @articles %>
|
||||
|
||||
<% @articles.each do |article| %>
|
||||
<%= render "individual_article", article: article %>
|
||||
<% end %>
|
||||
|
||||
<%= render partial: "individual_article", collection: @articles, as: :article %>
|
||||
<%= paginate @articles %>
|
||||
</div>
|
||||
</main>
|
||||
|
|
|
|||
|
|
@ -12,12 +12,10 @@
|
|||
<%= SiteConfig.sponsor_headline %>
|
||||
<%= inline_svg_tag("twemoji/heart.svg", aria: true, class: "crayons-icon crayons-icon--default ml-1", title: "Love") %>
|
||||
</h4>
|
||||
<div class="grid grid-cols-1 gap-6">
|
||||
<% @sponsorships.each do |sponsorship| %>
|
||||
<%= render "articles/single_sponsor", sponsorship: sponsorship %>
|
||||
<% end %>
|
||||
<a href="/sponsorships" class="crayons-btn crayons-btn--secondary fs-s">Become a sponsor</a>
|
||||
</div>
|
||||
<div class="grid grid-cols-1 gap-6">
|
||||
<%= render partial: "articles/single_sponsor", collection: @sponsorships, as: :sponsorship %>
|
||||
<a href="/sponsorships" class="crayons-btn crayons-btn--secondary fs-s">Become a sponsor</a>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<% end %>
|
||||
|
|
|
|||
|
|
@ -24,9 +24,7 @@
|
|||
Upcoming Events
|
||||
</h1>
|
||||
|
||||
<% @events.each do |event| %>
|
||||
<%= render "event", event: event %>
|
||||
<% end %>
|
||||
<%= render partial: "event", collection: @events, as: :event %>
|
||||
|
||||
<% if @events.none? %>
|
||||
<div class="crayons-notice">
|
||||
|
|
@ -38,11 +36,7 @@
|
|||
<h1>
|
||||
Past Events
|
||||
</h1>
|
||||
<%= render partial: "event", collection: @past_events, as: :event %>
|
||||
<% end %>
|
||||
|
||||
<% @past_events.each do |event| %>
|
||||
<%= render "event", event: event %>
|
||||
<% end %>
|
||||
|
||||
</div>
|
||||
</div>
|
||||
|
|
|
|||
|
|
@ -1,7 +1,5 @@
|
|||
<div id="organization-article-index"></div>
|
||||
<% @stories.each_with_index do |story, i| %>
|
||||
<%= render "articles/single_story", story: story, featured: false %>
|
||||
<% end %>
|
||||
<%= render partial: "articles/single_story", collection: @stories, as: :story, locals: { featured: false } %>
|
||||
<% if @stories.size > 1 %>
|
||||
<div class="placeholder-div"></div>
|
||||
<% end %>
|
||||
|
|
|
|||
|
|
@ -7,21 +7,17 @@
|
|||
</h3>
|
||||
</header>
|
||||
<div class="p-4 pb-2 pt-3">
|
||||
<% @pinned_stories.each do |story| %>
|
||||
<%= render "articles/single_story", story: story, featured: false %>
|
||||
<% end %>
|
||||
<%= render partial: "articles/single_story", collection: @pinned_stories, as: :story, locals: { featured: false } %>
|
||||
</div>
|
||||
</div>
|
||||
<% end %>
|
||||
<% @stories.each_with_index do |story, i| %>
|
||||
<%= render "articles/single_story", story: story, featured: false %>
|
||||
<% if i == 0 && @comments.present? %>
|
||||
<% if @stories.present? %>
|
||||
<%= render "articles/single_story", story: @stories.first, featured: false %>
|
||||
<% if @comments.present? %>
|
||||
<%= render "users/comments_section" %>
|
||||
<% end %>
|
||||
<% end %>
|
||||
<% if @stories.none? && @comments.present? %>
|
||||
<%= render partial: "articles/single_story", collection: @stories[1, @stories.size], as: :story, locals: { featured: false } %>
|
||||
<div class="placeholder-div"></div>
|
||||
<% elsif @comments.present? %>
|
||||
<%= render "users/comments_section" %>
|
||||
<% end %>
|
||||
<% if @stories.size > 1 %>
|
||||
<div class="placeholder-div"></div>
|
||||
<% end %>
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue