Voici comment créer un champ « fichier » au sein d'un type d'entité custom dans drupal 8 :
$fields['programme_pdf'] = BaseFieldDefinition::create('file')
->setLabel(t('Programme PDF'))
->setSetting('file_directory', 'formations/programme') // dossier d'upload
->setSetting('max_filesize', '10MB') // taille max du fichier
->setSetting('file_extensions', 'pdf') // extensions autorisées, à séparer par un espace
->setSetting('description_field', FALSE) // si on veut activer un champ « description »
->setDisplayOptions('form', [
'label' => 'hidden',
'type' => 'file_generic',
'weight' => 4,
])
->setDisplayConfigurable('form', TRUE)
->setDisplayConfigurable('view', TRUE);
Ajouter un commentaire