如何在 Drupal 8 中写入和读取数据库中的信息?

How to write and read informations from the database in Drupal 8?

我无法在 Drupal 8 中写入和读取数据库中的信息。

在 Drupal 7 中它看起来像这样:

# save & update
variable_set('variable', 'value');

# get
variable_get('test', false);

我知道在 Drupal 8 中它看起来完全不同但是我尝试过的东西 不起作用。

要从配置对象中读取数据,请使用 \Drupal::config()->get('system.site')->get('name')

要将数据设置到配置对象,您首先需要加载可编辑的配置实体,然后设置数据,最后保存它。

$site_settings = \Drupal::configFactory()->getEditable('system.site');
$site_settings->set('name', 'Foo site');
$site_settings->save();

要将自定义配置保存到数据库,请创建一个配置 yaml 文件:

modules/MODULE_NAME/config/install/custom.configuration.yml

custom-variable: 'hello world'

您还应该为您的配置提供架构文件:

modules/MODULE_NAME/config/schema/custom.configuration.schema.yml

custom-variable:
  type: 'string'
  label: 'Custom variable'
  description: 'A custom variable to store information in the database'