ดังนั้นฉันจึงเปลี่ยนเป็นโหมดผู้พัฒนาในขณะที่พัฒนาโครงการ Magento 2 โดยใช้คำสั่งต่อไปนี้:
php bin/magento deploy:mode:set developer
ดีมากฉันได้รับข้อความนี้และฉันก็พัฒนาเว็บไซต์ให้ดี:
โหมดแอปพลิเคชันปัจจุบัน: ผู้พัฒนา
ด้วยเหตุผลบางอย่างฉันต้องการกลับไปที่default
โหมดเพื่อตรวจสอบพฤติกรรมของเว็บไซต์ในโหมดนี้ ไม่มีเหตุผลเฉพาะที่บอกตามตรงฉันแค่อยากกลับไปใช้โหมดนี้
ดังนั้นฉันจึงรันคำสั่งต่อไปนี้:
php bin/magento deploy:mode:set default
แต่ฉันได้รับข้อผิดพลาดแปลก ๆ นี้โดยไม่มีคำอธิบายเพิ่มเติม:
Cannot switch into given mode "default"
ฉันตรวจสอบไฟล์ต่อไปนี้ที่จัดการการตั้งค่าโหมดMagento/Deploy/Console/Command/SetModeCommand.php
และนี่คือสิ่งที่ฉันพบ:
switch($toMode) {
case State::MODE_DEVELOPER:
$modeController->enableDeveloperMode();
break;
case State::MODE_PRODUCTION:
if ($skipCompilation) {
$modeController->enableProductionModeMinimal();
} else {
$modeController->enableProductionMode();
}
break;
default:
throw new LocalizedException(__('Cannot switch into given mode "%1"', $toMode));
}
เป็นเรื่องที่แปลกมากMagento 2 ถูกจัดส่งในโหมดเริ่มต้น แต่คุณไม่สามารถเปลี่ยนกลับไปเป็นโหมดเฉพาะนั้นได้ อะไรคือเหตุผลเบื้องหลังสิ่งนี้
แก้ไข: สำหรับผู้ที่สนใจฉันลงเอยด้วยการสร้างปัญหาใน github: https://github.com/magento/magento2/issues/4292