Các app.root tham số đã được thêm vào trong Drupal 9 để thay thế tham số app.root dịch vụ. Nếu bạn đang sử dụng Drupal 8, lỗi đó có thể do:
- Một mô-đun tương thích với Drupal 8 và Drupal 9, có mã truy cập vào app.root tham số vùng chứa khi nó chạy trên Drupal 8
- Mã khác cố truy cập vào app.root tham số vùng chứa khi nó chạy trên Drupal 8
Điều này có thể xảy ra vì:
- Một trong những đối số cho một dịch vụ là
'%app.root%'
(yêu cầu tham số vùng chứa) thay vì '@app.root'
(yêu cầu dịch vụ tồn tại trong Drupal 8.x)
- Có mã sử dụng
$container->getParameter('app.root')
thay vì $container->get('app.root')
- Có mã kiểm tra xem có sử dụng app.root tham số vùng chứa hoặc app.root dịch vụ, nhưng không sử dụng được dịch vụ có sẵn
Để hiểu mã nào gây ra lỗi, chỉ cần tìm kiếm %app.root% hoặc ->getParameter('app.root'). Tìm kiếm app.root là không đủ, vì nó sẽ trả về bất kỳ dòng nào sử dụng chính xác app.root dịch vụ.
[Symfony 5] Thay thế các dịch vụ chuỗi app.root và site.path bằng các tham số vùng chứa đã được tạo đã được tạo vào ngày 13 tháng 8 năm 2019 và được đánh dấu là đã sửa vào ngày 23 tháng 12 năm 2020. (Bản vá được thực hiện trên Drupal 9.x vào ngày 5 tháng 3 năm 2020.)
Bảng điều khiển Drupal 1.9.4 (phát hành vào ngày 11 tháng 11 năm 2019) không được chứa mã truy cập vào app.root tham số vùng chứa, vì lõi Drupal thậm chí không có tham số vùng chứa đó khi Bảng điều khiển Drupal 1.9.4 được phát hành.