Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module › Views ›

[gelöst] Views: den Cache überlisten?

Eingetragen von DrFrankieWb (48)
am 11.03.2017 - 18:09 Uhr in
  • Views
  • Drupal 8.x

Das Datenchaching von Views spiel mir einen Streich:
Eine View gibt ein Ereignis, dass am aktuellen Tag stattfindet, in einem Block aus.
Steht kein aktuelles Ereignis in der Datenbank (leeres Resultat), wird eine zweite View gestartet, die dann nach anderen Suchkriterien zurückliegende Ereignisse ausgibt.
So weit, so gut.
Solange ich eingeloggt bin, sehe ich korrekte Resultate, auch in der View-Vorschau.
Schaue ich am jedoch nächsten Tag als "anonymous" auf die Seite sehe ich nicht etwa das aktuelle Ereignis, sondern die Blockdarstellung vom vergangenen Tag.
Erst bei einem Anmeldeversuch wird die Ausgabe aktualisiert, egal ob ich mich eingeloggt habe oder nur einen Anmeldeversuch gestartet habe.

Versuchsweise habe ich in den jeweiligen Views unter -> ERWEITERT -> cache: "tag based" auf Zeitbasiert mit Angabe von jeweils 1 Stunde für Anfrageergebnisse und Ausgabeformat umgestellt.
Leider ist das Ergebnis wieder dasselbe: der Ausgabeblock wird nicht entsprechend des neuen Tages aktualisiert.
Nun habe ich erst mal das Datencaching des View-Moduls deaktiviert, in der Hoffnung dass morgen die Anzeige nun selbstständig aktualisiert wird.
Wenn das auch nicht funktioniert, bleibt nur, sich einmal am Tag einzuloggen, um eine Aktualisierung zu erzwingen?

Die Lösung:
In der View:
1. -> ERWEITERT -> Datenbankabfrageeinstellungen: -> Einstellungen -> SQL-rewrting deaktivieren.
2. -> Cache: zeitbasiert. (ich habe hier 2 Stunden/ 2 Stunden gewählt, reicht bei meiner Thematik aus)
3. In den erweiterten Einstellungen von Views ist das Datencaching von Views NICHT deaktiviert.

‹ SQL Fehlermeldung [gelöst] Views: den Cache überlisten? ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Läuft dein Cron?

Eingetragen von marco.b (645)
am 11.03.2017 - 23:50 Uhr

Hast du einen serverseitigen (zeitgesteuerten) drupal cronjob laufen? Der ist meines Wissens nach Voraussetzung für zeitbasierte Caches.

Und und schreibst

Zitat:

cache: "tag based"

- du meinst wahrscheinlich 'time based'?!

  • Anmelden oder Registrieren um Kommentare zu schreiben

Views Cache

Eingetragen von DrFrankieWb (48)
am 12.03.2017 - 13:40 Uhr

nein, serverseitig läuft da nix.
Views cache in der View selbst: tag based, oder time based: als Anonymous wird nix aktualisiert.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Was ist denn unter

Eingetragen von marco.b (645)
am 12.03.2017 - 21:12 Uhr

Was ist denn unter /admin/config/system/cron konfiguriert?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Cron:

Eingetragen von DrFrankieWb (48)
am 14.03.2017 - 20:13 Uhr

Da läuft der Standard-Cron.
Ich habe den jetzt mal versuchsweise auf "alle 6 Stunden" gesetzt. Ob das was bringt, weiß ich nicht.
Da schlägt meine Unkenntnis zu Buche:
Bei meinem Server habe ich keinen ssh-Account, also fällt drush aus. Wie kann ich den Cron kofigueriren, so dass der Viehs-Cache um Mitternacht gelöscht wird? Ich glaube das könnet evtl. schon weiterhelfen.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Wenn der Cron nicht von

Eingetragen von marco.b (645)
am 15.03.2017 - 10:19 Uhr

Wenn der Cron nicht von aussen getriggert wird, sondern in drupal auf x Stunden gesetzt wird, löst der 1. Besucher nach dieser Zeit den Cron aus, das nennt sich poorman's cron und ist suboptimal.
Lies mal hier: http://www.drupalcenter.de/handbuch/6019 (und es gibt auch andere threads dazu hier im Forum).

Kurz gesagt, der Weg ist: in drupal deaktivieren und von aussen antriggern.

Es gibt sogar shared hoster mit accounts unter 10 €/mtl., bei denen ein serverseitiger Cron konfigurierbar ist. Wenn das nicht der Fall ist, gibt es Anbieter wie https://www.cronjob.de/.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Cron job und Views Cache

Eingetragen von DrFrankieWb (48)
am 15.03.2017 - 12:11 Uhr

Ja, wie Du sagst, Marco,
erst der erste angemeldete User löst hier etwas aus.
Falls der Cronjob unabhängig von einem User - etwa um Mitternacht - ausgelöst werden könnte, kann man das so konfigieren, dass der ViewsCache for anonymous gelöscht resp. neu aufgebaut wird?
Ich streube mich im Moment dagegen, diese Anzeigen in einen internen Breich zu legen, weil jeder Klick und jede Eingabe mehr möglichweise/wahrschinlich zu weniger Akzeptenz meiner Nutzer führt.
Btw: wo bezieht man dieses Wissen für Drupal 8?
Deutschsprachige Literatur gibt es noch nicht und in der englischen werden die Grundlagen lang und breit erklärt, aber nicht solche Dinge - habe ich jedenfalls noch nicht gefunden.
Oder hat sich das gegenüber den alten Version nicht so viel geändert, dass es so etwas wie langjährige Erfahrung ist?

  • Anmelden oder Registrieren um Kommentare zu schreiben

Zitat: Falls der Cronjob

Eingetragen von marco.b (645)
am 15.03.2017 - 14:36 Uhr
Zitat:

Falls der Cronjob unabhängig von einem User - etwa um Mitternacht - ausgelöst werden könnte, kann man das so konfigieren, dass der ViewsCache for anonymous gelöscht resp. neu aufgebaut wird?

Ja,klar.

Zitat:

Ich streube mich im Moment dagegen, diese Anzeigen in einen internen Breich zu legen, weil jeder Klick und jede Eingabe mehr möglichweise/wahrschinlich zu weniger Akzeptenz meiner Nutzer führt.

das cache leeren sollte bestimmt kein Grund für sowas sein.

Zitat:

Btw: wo bezieht man dieses Wissen für Drupal 8?

Da hat sich nach meinem Wissensstand nicht viel geändert. Wenn du drush hast, ist es das optimale, es geht aber auch einfach durch zeitgesteuertes Auslösen des cron-html-links (siehe oben). Den cron link für deine Website siehst du u.a. im drupal statusreport.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Rufe doch mal den cron als

Eingetragen von marco.b (645)
am 15.03.2017 - 14:38 Uhr

Rufe doch mal den cron als anonymer über den html-cronlink auf und gehe als anonymer mit einem anderen browser danach auf deine viewspage, dann siehst du, ob durch den cron der cache geleert wurde.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Zitat:Zitat:Ich streube

Eingetragen von DrFrankieWb (48)
am 15.03.2017 - 14:40 Uhr
Zitat:
Zitat:

Ich streube mich im Moment dagegen, diese Anzeigen in einen internen Breich zu legen, weil jeder Klick und jede Eingabe mehr möglichweise/wahrschinlich zu weniger Akzeptenz meiner Nutzer führt.

Zitat:

das cache leeren sollte bestimmt kein Grund für sowas sein.

nein, aber das (lästige) Anmelden.

Zitat:

Den cron link für deine Website siehst du u.a. im drupal statusreport.

ja. Ich habe nur die cron.php nirgendwo entdeckt, weil ich dachte, man sollte/könnte diese bearbeiten.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 1 Woche 4 Tagen
  • Hey danke
    vor 1 Woche 4 Tagen
  • Update: jetzt gibt's ein
    vor 1 Woche 5 Tagen
  • Hallo, im Prinzip habe ich
    vor 2 Wochen 3 Tagen
  • Da scheint die Terminologie
    vor 2 Wochen 3 Tagen
  • Kannst doch auch alles direkt
    vor 3 Wochen 10 Stunden
  • In der entsprechenden View
    vor 3 Wochen 11 Stunden
  • Dazu müsstest Du vermutlich
    vor 3 Wochen 11 Stunden
  • gelöst
    vor 5 Wochen 4 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 5 Wochen 4 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20451

Neue User:

  • Mroppoofpaync
  • 4aficiona2
  • AppBuilder

» Alle User anzeigen

User nach Punkten sortiert:
wla9461
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 10 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association