Điểm:2

"RuntimeException: Bạn đã yêu cầu một tham số không tồn tại 'app.root'"

lá cờ cn

Sau khi tôi xóa bộ nhớ cache, tôi nhận được thông báo này.

Symfony\Component\DependencyInjection\Exception\RuntimeException: Bạn đã yêu cầu tham số không tồn tại "app.root". trong Symfony\Component\DependencyInjection\Compiler\DefinitionErrorExceptionPass-> processValue() (dòng 37 của /var/www/call/vendor/symfony/dependency-injection/Compiler/DefinitionErrorExceptionPass.php). Symfony\Component\DependencyInjection\Compiler\DefinitionErrorExceptionPass-> processValue() (Dòng: 60) Symfony\Component\DependencyInjection\Compiler\AbstractRecursivePass-> processValue() (Dòng: 30) Symfony\Component\DependencyInjection\Compiler\DefinitionErrorExceptionPass-> processValue() (Dòng: 39) Symfony\Component\DependencyInjection\Compiler\AbstractRecursivePass-> process() (Dòng: 140) Symfony\Component\DependencyInjection\Compiler\Compiler->compile() (Dòng: 789) Symfony\Component\DependencyInjection\ContainerBuilder->compile() (Dòng: 1335) Drupal\Core\DrupalKernel->compileContainer() (Dòng: 916) Drupal\Core\DrupalKernel->initializeContainer() (Dòng: 477) Drupal\Core\DrupalKernel->boot() (Dòng: 707) Drupal\Core\DrupalKernel->xử lý() (Dòng: 19)

Bạn có bất cứ ý tưởng về làm thế nào để giải quyết vấn đề này?

lá cờ cn
Dòng thứ hai cho biết `Bạn đã yêu cầu một tham số không tồn tại "app.root".` Hãy thử tìm kiếm cơ sở mã của bạn cho `app.root` và xem bạn đang yêu cầu nó ở đâu.
Dragan Petrovic FSD avatar
lá cờ cn
Tất cả đều liên quan đến bảng điều khiển drupal
lá cờ cn
Phiên bản nào của bảng điều khiển Drupal? Bạn có chắc phiên bản tương thích với 8.9.20 không?
Dragan Petrovic FSD avatar
lá cờ cn
"drupal/bảng điều khiển": "^1.9",
leymannx avatar
lá cờ ne
Xóa Bảng điều khiển Drupal và thử lại.
Dragan Petrovic FSD avatar
lá cờ cn
cùng một vấn đề, cùng một lỗi
Điểm:3
lá cờ cn

Lỗi này là do mã sử dụng %app.root% làm tham số trong Drupal 8.

Ví dụ:

   cache.backend.apcu:
     lớp: Drupal\Core\Cache\ApcuBackendFactory
     đối số: ['%app.root%', '%site.path%', '@cache_tags.invalidator.checksum']

Đây là mã Drupal 9 không hoạt động trong Drupal 8.

Đối số dịch vụ @app.root mặt khác không gây ra lỗi này. Bạn tìm thấy nó trong Bảng điều khiển Drupal hoặc mã Drupal 8 khác. Nó không được dùng trong Drupal 9, nhưng vẫn hoạt động cho đến khi bạn cập nhật lên Drupal 10. Thì nó báo lỗi này Lỗi "Dịch vụ không tồn tại" sau khi xóa bộ đệm

Xem bản ghi thay đổi https://www.drupal.org/node/3080612.

Điểm:2
lá cờ us

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.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.