Cache nad include šablonou do layoutu
- FJP
- Člen | 124
Zdravím,
na homepage stránky tahám výpis článků z blogu. Problém je v tom, že se mi neaktualizují výsledky, když přidám článek.
@layout.latte
<div class="wrapper">
{include '_components/flashmessages.latte'}
{include '_components/hlavicka.latte'}
{include #content}
{include '_components/footer.latte'}
{include '_components/cookies.latte'}
</div>
Homepage/default.latte
{block content}
{include '../_components/rozcestnik.latte'}
{include '../_components/aktuality.latte', showBtn: true }
{include '../_components/blog.latte'}
{include '../_components/poutnicky-servis.latte'}
{include '../_components/partneri.latte'}
_components/blog.latte
{block content}
{default $col = '4'}
{default $class = null}
{* {default $blog = null} *}
<section class="container blog-wrapper {$class}">
{if $presenter->name !== 'Front:Blog'}
<h2><a href="/zazitky-z-cest">Příběhy poutníků →</a></h2>
{/if}
<div class="row">
{if $blog}
{foreach $blog as $item}
<article class="col-{$col}">
<a href="/zazitky-z-cest/{$item->slug}/{$item->page->id}">
<h3>{$item->title}</h3>
<p>
<strong>Datum: {$item->page->date_created|date:'j. n. Y'}</strong><br />
{$item->description}
</p>
<span class="button">číst více</span>
</a>
</article>
{/foreach}
{/if}
</div>
</section>
příprava dat v HomepagePresenter.php
...
public function actionDefault() {
$this->template->blog = $this->pageTranslation->all()
->where('page_translation.language_code', $this->locale)
->where('page_translation.is_visible', true)
->where('page.is_visible', true)
->where('page.is_deleted', 0)
->order('page.date_updated DESC')
->limit(3);
}
...
Nenapadá někoho, kde dělám chybu? Díky za info.
edit: stav trvá, i když smažu cache … na podstránce blogu ty příspěvky jdou a data tam lezou stejná
Editoval FJP (18. 1. 2022 16:06)
- Marek Bartoš
- Nette Blogger | 1264
Když v prohlížeči uděláš force reload (CTRL + F5), tak se ti data načtou? V postnutém kódu problém není, spíš půjde o agresivní cachovací hlavičky zasílané webserverem/appkou
- FJP
- Člen | 124
Marek Bartoš napsal(a):
Když v prohlížeči uděláš force reload (CTRL + F5), tak se ti data načtou? V postnutém kódu problém není, spíš půjde o agresivní cachovací hlavičky zasílané webserverem/appkou
Je to beze změny.
Dělá mi to na devu i na live a nepřijde mi, že bych dělal něco nestandardního.
nette 2.3
- Kamil Valenta
- Člen | 815
FJP napsal(a):
<h2><a href=„/zazitky-z-cest“>Příběhy poutníků →</a></h2>
<a href=„/zazitky-z-cest/{$item->slug}/{$item->page->id}“>
Je to sice mimo téma, ale později by se Ti to hodit mohlo. Máš nějaký
hodně dobrý důvod, proč skládáš odkazy takto a nenecháš to n:hrefem
nebo plinkem udělat router?
Ptám se proto, že patrně žádný takový důvod neexistuje a potřeba
změnit podobu URL může přijít kdykoliv, i když má člověk pocit, že
nepřijde nikdy…
- FJP
- Člen | 124
Kamil Valenta napsal(a):
FJP napsal(a):
<h2><a href=„/zazitky-z-cest“>Příběhy poutníků →</a></h2>
<a href=„/zazitky-z-cest/{$item->slug}/{$item->page->id}“>Je to sice mimo téma, ale později by se Ti to hodit mohlo. Máš nějaký hodně dobrý důvod, proč skládáš odkazy takto a nenecháš to n:hrefem nebo plinkem udělat router?
Ptám se proto, že patrně žádný takový důvod neexistuje a potřeba změnit podobu URL může přijít kdykoliv, i když má člověk pocit, že nepřijde nikdy…
Díky za připomínku. Konkrétní důvod k tomu nemám, do budoucna si na to dám pozor.