簡體   English   中英

為什么 artisan 命令不清除 laravel 中的緩存

[英]why artisan command not clearing cache in laravel

我已經編寫了從數據庫中獲取注冊用戶的用戶名的邏輯,並將其用作我的 web.php 中的 URL 前綴,並使用這些名稱對一些路由進行了分組。

在我的本地機器上它似乎工作正常。 在服務器用戶可以注冊的情況下,但該用戶無法以其用戶名作為前綴訪問更多路由。 嘗試訪問時顯示 404。

什么時候研究是由於路線沒有被清除。 因此,在新用戶注冊成功后添加以下代碼來清除緩存和路由。 但仍然無法正常工作。 我怎樣才能做到這一點。

添加在頂部;

use Illuminate\Support\Facades\Artisan;
Artisan::call('route:clear'); 
Artisan::call('cache:clear');

我試過手動清除緩存,效果很好。 但我試圖通過代碼自動完成。 另外僅供參考,我沒有收到任何錯誤。 因為我嘗試添加日志並使用

Artisan::output()

檢查它,顯示成功消息沒有任何錯誤

我不確定您是否可以通過該外觀調用默認的 laravel artisan 命令。 我敢肯定的是,如果你想以編程方式刪除緩存,你應該像這樣使用 Cache facade

use Illuminate\Support\Facades\Cache;

Cache::flush();

文檔中有關它的更多信息。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM