コンテンツエンティティタイプがあり、[ファイルのアップロード]フィールドが必要です。 Entityクラスでフィールドを宣言しました
$fields['file'] = BaseFieldDefinition::create('file')
->setLabel(t('Upload a file'))
->setDescription(t('Choose file from your computer'));
EntityFormでは、いくつかの設定を設定しようとしています。これは、後で「#states」を使用してこれを信頼できるようにする必要があるためです。
$form['file'] = [
'#title' => $this->t('File'),
'#description' => $this->t('Upload a file from your computer'),
'#type' => 'file',
'#default_value' => $entity->file->value,
];
現時点ではフィールドが表示されていますが、フォームの保存に問題があります。ファイルは添付されていますが、アップロードされておらず、エラーは次のように述べています。
致命的なエラー:C:\ A plus\drupalsite\core\modules\file\src\Plugin\Validation\Constraint\FileValidationConstraintValidator.php(18行目)の非オブジェクトに対するメンバー関数getValue()の呼び出し
$form['File'] = array(
'#type' => 'managed_file',
'#title' => t('Choose File'),
'#upload_location' => 'public://MyFilesFolder/',
'#default_value' => $entity->get('File')->value,
'#description' => t('upload file'),
'#states' => array(
'visible' => array(
':input[name="File_type"]' => array('value' => t('Upload Your File')),
),
),
);