0

私はdrupalが初めてです。ユーザー関連の詳細を処理する必要があるモジュールを作成する必要があります。

モジュールを作成し、必要なデータベースの変更を'users_field_data'テーブルに追加することができました。db_add_field を使用してhook_install()

db_add_field('users_field_data', 'user_office', array(
            'type' => 'varchar',
            'length' => 255,
            'not null' => FALSE,
        ));

しかし、drupal から他のモジュールをインストールするときに気づいたことの 1 つは、新しいフィールドがデータベースに追加されると、いくつかの値が「config」テーブルと「key_value」テーブルに保存されることです。

drupal 8 で既存のテーブルに新しいフィールドを作成するときに、'config'テーブルとテーブルに値を追加する方法はありますか?'key_value'

4

1 に答える 1

0

既存のエンティティへのフィールドの追加は、フィールドおよびフィールド ストレージ構成エンティティを使用して行う必要があります。

目標を達成するには、次の手順を実行します。

  1. ターゲット エンティティのフィールドの管理ページに移動します (ユーザーの場合は、構成ページでリンクを見つけることができます)。
  2. GUI で必要なフィールドを追加します。
  3. 構成の同期ページに移動し、新しいフィールドのフィールドとフィールド ストレージ構成をエクスポートします。
  4. 新しいファイルは、モジュールの config/install ディレクトリに保存する必要があります。
  5. モジュールをインストールする
  6. フィールドはインストール時に追加する必要があります。
于 2015-12-22T23:42:54.140 に答える