【问题标题】:Drupal 8 autoload don't load custom classDrupal 8自动加载不加载自定义类
【发布时间】:2017-01-21 01:45:52
【问题描述】:

我最近决定使用 drupal 8 开发一个新网站(我从未使用过 drupal 7 或其他版本)。 我必须创建一个模块,我需要在这个模块中的自定义类,我创建一个服务来使用它。但我有一个错误,我的自定义类没有找到。

当我在 autoload.php 中需要我的类时,它就可以工作了。所以我的服务是正确的,但我的课程没有包含在我的自动加载中。

有人能解决我的问题吗?

【问题讨论】:

    标签: php drupal autoload drupal-8


    【解决方案1】:

    你“使用”这个类吗?像这样:

    use Drupal\your_namespace\yourClass;
    

    当然,你的类需要一个命名空间来完成这项工作。

    【讨论】:

    • 是的,我用过它,当我在自动加载文件中使用 require 时它就可以工作
    【解决方案2】:

    你需要遵循 PSR4 规则,如果你的类是在模块中定义的,你应该把你的类文件放到正确的文件夹结构中,例如如果你的类命名空间定义为 "Drupal\your_module_name\yourClass" ,文件夹结构应该是:模块\你的模块名称\src\(你的类文件)

    【讨论】:

      猜你喜欢
      • 2023-03-29
      • 2016-04-26
      • 2019-02-10
      • 2016-04-17
      • 1970-01-01
      • 2012-11-08
      • 1970-01-01
      • 2019-11-06
      • 1970-01-01
      相关资源
      最近更新 更多