Функция скрипта для загрузки файла в ColdFusion 9 - PullRequest
5 голосов
/ 09 февраля 2010

Есть ли в ColdFusion 9 эквивалент cfscript для действия cffile = "upload"? Просматривая документы, кажется, нет.

[Обновление] Это было добавлено в обновлении 9.0.1 http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/WSd160b5fdf5100e8f36f73035129d9e70a92-8000.html

Ответы [ 3 ]

10 голосов
/ 09 февраля 2010

Вы можете легко абстрагировать его с помощью пользовательской функции.

<cffunction name="fileuploader">
    <cfargument name="formfield" required="yes" hint="form field that contains the uploaded file">
    <cfargument name="dest" required="yes" hint="folder to save file. relative to web root">
    <cfargument name="conflict" required="no" type="string" default="MakeUnique">
    <cfargument name="mimeTypesList" required="no" type="string" hint="mime types allowed to be uploaded" default="image/jpg,image/jpeg,image/gif,image/png,application/pdf,application/excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document,application/vnd.ms-powerpoint,application/vnd.openxmlformats-officedocument.presentationml.presentation,application/vnd.ms-excel,image/pjpeg">

    <cffile action="upload" fileField="#arguments.formField#" destination="#arguments.dest#" accept="#arguments.mimeTypesList#" nameConflict="#arguments.conflict#">

    <cfreturn cffile>
</cffunction>

А затем используйте его в cfscript:

<cfscript>
    // NOTE: because of how cffile works, put the form field with the file in quotes.
    result = fileUploader("FORM.myfield", myDestPath);
    WriteOutput(result.fileWasSaved);
</cfscript>

Примечание. Я буду очень осторожен при переименовании этой функции в случае, если Adobe включит эту функцию в будущем.

3 голосов
/ 07 сентября 2011

Не уверен, когда это было добавлено, но CF поддерживает загрузку файлов в CFSCRIPT. Я использую FileUpload () в течение некоторого времени. Я проверил, что это не функция в моей среде MVC, и def, кажется, является чем-то уникальным для CF 9.01.

Тем не менее, Builder 2, похоже, не нравится, и я не могу найти ссылку на CF 9 Docs, но он работает, и это часть продолжительной версии Adobe ColdFusion 9.01, Ralio.

использованных примеров:

fileUpload(getTempDirectory(),"ImageFile","","makeUnique");
1 голос
/ 09 февраля 2010

Нет, но это было запрошено.

...