Tôi đã tạo một mô-đun thông qua Drupal Console, thật không may, nó không được đặt trong một thư mục của riêng nó, thay vào đó /modules/custom
. Trước khi tôi nhận thấy nó đã đi đâu, tôi đã kích hoạt mô-đun.
Trong Drupal 6/7, điều này rất dễ khắc phục - tôi có thể chỉ cần đặt các tệp vào đúng đường dẫn, xóa bộ nhớ cache (có thể xây dựng lại sổ đăng ký, đó không phải là một khoa học chính xác), và tất cả đều ổn.
Điều tương tự cũng không đúng với Drupal 8; Tôi đã chuyển các tệp vào thư mục con, bộ nhớ cache được xây dựng lại và tất cả các yêu cầu cho tôi biết rằng Drupal không bao gồm tệp được yêu cầu. Tệp cụ thể là một lớp khối và đường dẫn mà Drupal đang cố gắng tìm nó là nơi nó từng ở, chứ không phải nơi tôi đã chuyển nó đến.
Một chút của việc phản đối mã là trong Symfony ApcClassLoader
, vì vậy tôi đoán rằng tôi cần phải xóa một cái gì đó hơi cao hơn đầu của Drupal để cập nhật tham chiếu đường dẫn này.
Làm thế nào tôi có thể làm điều đó?
Gỡ cài đặt và cài đặt lại mô-đun hoạt động, nhưng một khi có dữ liệu quan trọng được lưu trữ sẽ không phải là một tùy chọn.
Tôi đã sai, gỡ cài đặt và cài đặt lại không phải là một lựa chọn khả thi. Sau khi gỡ cài đặt và cài đặt lại, Drupal không còn có thể nhận các khối tùy chỉnh mà mô-đun xác định. Tôi đoán rằng tài liệu tham khảo được lưu trữ ở một nơi nào đó không bị xóa khi gỡ cài đặt mô-đun. Chỉ cần tìm ra nơi đó và làm thế nào để xóa nó ...
ApcClassLoader::findFile()
nhận được đường dẫn sai từ apc_fetch()
, hoặc trình nạp lớp được trang trí trả lại đường dẫn sai?