Связывание загруженного файла (id) с другой таблицей - PullRequest
2 голосов
/ 01 сентября 2011

Я использую Filestore для загрузки в форму.Это отличная реализация, но у меня есть сомнения по поводу связывания этого файла, загруженного с регистром, в таблицу.

Когда я запускаю filestore.001.sql, он добавляет 4 таблицы в базу данных (filestore_image, filestore_file, filestore_volume), filestore_extension).

Тогда в следующей таблице у меня есть:

id
field1
idfile

Я думал о том, как это сделать, когда я отправляю форму.Может быть, dsql (), а затем выбрать последний вставленный файл, но я не знаю, является ли это лучшим вариантом.

Спасибо Alejandro

1 Ответ

0 голосов
/ 01 сентября 2011

Когда вы добавляете поле изображения в форму, оно будет возвращать ваш идентификатор (или список идентификаторов загруженных файлов) при отправке.Таким образом, теоретически пользователь может загрузить изображение и никогда не отправлять форму, следовательно, он не будет связан.

Вы можете иметь следующую таблицу:

  • id
  • name
  • picture_id

и определите рисунок как изображение типа, на сайте должны быть примеры - он автоматически получит идентификатор из таблицы filestore_file.

Есть другой способВы можете сделать, и именно так строится Filestore_Image.Вы можете создать свою собственную модель, связать ее с необходимым изображением и использовать ее для своего поля изображения.Поскольку это ваша модель, теперь вы можете контролировать, что происходит перед вставкой, вы можете переопределить события beforeInsert и afterInsert, чтобы создать правильные ассоциации.

Оба метода имеют свои собственные применения, выберите тот, который вам нравится.

...