Как создать поле файл у сущности?

У меня есть сущность одним из полей которой должен быть файл.

Ну предположим такая:
class MessageTable extends \Bitrix\Main\Entity\DataManager
{

    public static function getMap()
    {
        return array(
			new Entity\IntegerField('ID', array(
				'primary' => true,
				'autocomplete' => true
			)),
            new Entity\IntegerField('AUTHOR', array( 
                'required' => true
            )),
			new Entity\StringField('TEXT'),
			new Entity\IntegerField('FILE')
        );
    }
	
}


Пока я сделал ее IntegerField и собираюсь сохранять файл в таблице файлов и записывать туда id, и написать код который будет обслуживать добавление/удаление файла + обмазаться хуками на удаление, элемента сущности, который будет удалять файл из файловой таблицы.

Возможно есть другой способ?
Или кто-то уже реализовывал такое - найти не могу.
  • Вопрос задан
  • 73 просмотра
Пригласить эксперта
Ответы на вопрос 1
gromdron
@gromdron
Bitrix developer
Другой способ есть и он довольно простой: вы пишете что сущность работает с свойствами и добавляете UF_* свойство типа файл (или файл на диске) и битрикс делает все за вас. Единственное есть несколько ограничений:

- Поле называется с UF_ префиксом
- Валидация согласно настройкам поля
- Добавлять uf нужно отдельно
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы