Symfony: Doktrin-Cache löschen

Lesezeit: 3 Minuten

Symfony Doktrin Cache loschen
Morteza Kavakebi

Ich muss meine löschen Lehre zwischenspeichern Symfonie.

Es muss eine Möglichkeit in der Befehlszeile für geben leeren Sie den Cache.

Oder wo soll ich die zum Cache gehörenden Dateien finden und löschen?

  • rm -rf app/cache/* hat nicht geholfen?

    – Vitalii Zurian

    6. August 12 um 10:25 Uhr

  • hilft die Antwort? Wenn nein, versuchen Sie, den gesamten Cache mit app/console cache:clear zu löschen

    – amitchhajer

    6. August 12 um 14:14 Uhr

  • @thecatontheflat – Beachten Sie, dass der Doktrin-Cache häufig in apc und nicht im Dateisystem gespeichert wird, sodass das Entfernen der Cache-Dateien nicht hilfreich wäre.

    – Kaponika

    7. Mai 14 um 13:32 Uhr

  • @amitchhajer – beachten Sie, dass der General app/console cache:clear ist nur für den Symfony (App) Cache. Ich glaube nicht, dass es die Doktrin-Cache(s) löscht.

    – Kaponika

    7. Mai 14 um 13:33 Uhr

Symfony Doktrin Cache loschen
amitchhajer

Für Symfony 3+:

 php bin/console

listet alle Befehle auf, die folgenden sind für den Cache relevant:

 php bin/console doctrine:cache:clear-metadata 
 php bin/console doctrine:cache:clear-query  
 php bin/console doctrine:cache:clear-result

Vor Symfony 3:

app/console

wird auflisten, wie Sie es tun können

 app/console doctrine:cache:clear-metadata 
 app/console doctrine:cache:clear-query  
 app/console doctrine:cache:clear-result 

  • Übrigens, wenn Sie beispielsweise Mongodb verwenden, können Sie „app/console Doktrin:mongodb:cache:clear-metadata“ oder einfach „app/console Doktrin“ ausführen und Sie werden alle verfügbaren Optionen sehen

    – Gigala

    16. April 13 um 10:55 Uhr

  • Beachten Sie, dass Sie immer verwenden können app/console list um alle Befehle anzuzeigen oder app/console list doctrine um nur Befehle im Namensraum „Lehre“ anzuzeigen

    – Kaponika

    7. Mai ’14 um 13:30 Uhr

  • Ich habe es versucht doctrine:cache:clear-result im Produktumfeld. Es funktioniert nicht. Ich habe es auch versucht bin/doctrine orm:clear-cache:result. Es funktioniert auch nicht. Ich benutze memcache.

    – Sithu

    6. Oktober 15 um 2:39 Uhr


1644311169 540 Symfony Doktrin Cache loschen
Antho

Wenn Sie dies in Ihrem Code tun möchten (von Dokumentation der Lehre) :

Wenn Sie einfach alle Cache-Einträge löschen möchten, können Sie dies mit der Methode deleteAll() tun.

$cacheDriver = new DoctrineCommonCacheArrayCache();
$deleted = $cacheDriver->deleteAll();

  • Was ist der Unterschied zum Cache-Flushing?

    – Tschechisch

    30. Juli 16 um 19:30 Uhr

  • Dieser Code erstellt einen neuen Cache-Treiber. Es sollte das aktuelle QueryCacheProfile oder die Implementierung des Ergebniscaches aus der Konfiguration verwenden. Es wird den Cache in Ihrer Anwendung nicht auf magische Weise löschen, wenn Sie z. B. Redis oder Memcached verwenden.

    – Kafoso

    13. August 18 um 14:06 Uhr

Ich dachte, ich würde verrückt mit dem Caching von Doktrinergebnissen – am Ende musste ich memcached neu starten.

1644311170 338 Symfony Doktrin Cache loschen
Oli

Falls Sie APC verwenden, können Sie auch einfach den Code aufrufen

<?php
$deleted = apc_clear_cache() && apc_clear_cache('user');

in einer PHP-Seite auf demselben Server. Dies ist, was die Methode deleteAll () in Anthos Antwort tut, aber Sie sind nicht von den Doctrine-Klassen abhängig. Übrigens: Der komplette Cache wird geleert – nur für den Fall, dass Sie ihn für Nicht-Doctrine-Zeug verwenden.

Ich weiß, dass der Titel dieses Beitrags Symfony 2 lautet, aber für diejenigen unter Ihnen, die von Google kommen, wenn Sie Symfony 3+ haben, wird es sein:

bin/console

Im Gegensatz zu:

app/console

Symfony Doktrin Cache loschen
Koronos

Vielleicht ist es ein bisschen spät dafür, aber in meinem Fall hat Doktrin die Proxy-Klassen in der Produktion nicht generiert, dafür ändere ich die auto_generate_proxy_classes zu wahr:

#symfony2&3 app/config/config.yml
#symfony4 config/packages/doctrine.yaml (by default true since 4.2)

doctrine:
    orm:
        auto_generate_proxy_classes: true #"%kernel.debug%"

.

820700cookie-checkSymfony: Doktrin-Cache löschen

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy