Функция загрузки скрипта ColdFusion 9 не работает

У меня возникли проблемы с использованием функции cfscript для ColdFusion 9.0.0 fileUpload(). Я получаю это сообщение об ошибке:

«Переменная FILEUPLOAD не определена».

Вот мой код:

result = fileUpload(application.uploadPath, "attachment", "application/*, image/*", "makeUnique");

В качестве альтернативного решения я смог заставить его работать с предложением здесь Функция скрипта для загрузки файлов в ColdFusion 9 .

Функция fileUpload() работает на моем локальном рабочем столе с ColdFusion 9.0.1. Мне любопытно, удалось ли кому-нибудь заставить его работать на ColdFusion 9.0.0.

спасибо


person user752746    schedule 09.07.2013    source источник
comment
Как вы включаете определение функции в свое приложение? Если он находится в CFC, вам нужно указать его как cfcInstance.fileUpload(). Если вы встраиваете определение <cffunction> в тот же шаблон, в котором вы его вызываете, то оно должно работать, просто вызывая fileUpload().   -  person imthepitts    schedule 10.07.2013
comment
есть ли причина, по которой он не обновился до cf901?   -  person Henry    schedule 10.07.2013
comment
Это в CFC, и я использую структуру CFWheels. Вот как выглядит мой create(). публичная любая функция create(){ processlinks = model(ProcessLinks).new(params.processlinks); if (processlinks.save()){ if(params.attachment != ''){ result = fileUpload(application.uploadPath, вложение, приложение/*, изображение/*, makeUnique); if(result.fileWasSaved) { вложения = модель(имя=вложения).new(вложение=result.serverFile, ProcessLinksID=processlinks.id); вложения.сохранить(); } } } }   -  person user752746    schedule 10.07.2013
comment
Я уже некоторое время жду, пока админ обновится. Думал, посмотрю, не повезло ли кому.   -  person user752746    schedule 10.07.2013


Ответы (2)


Из документов для fileUpload() (всегда хорошее место для начала такие вопросы):

История

ColdFusion 9.0.1: добавлена ​​эта функция.

Что вроде объясняет, почему это не работает в CF9.0. Чтобы это заработало, вам нужно создать собственный файл или, возможно, uploadFile() на cflib. быть вариантом.

person Adam Cameron    schedule 10.07.2013
comment
Вот что я думаю. Спасибо, Адам, ценю ответ. - person user752746; 11.07.2013

Еще одна вещь, которую следует отметить с FileUpload(), заключается в том, что, в отличие от эквивалента на основе тега cffile, он не дает вам возможности указать «режим» (например, 777). Поэтому при запуске на Linux-серверах, где разрешения ограничены, вы можете столкнуться со странным поведением!

Интересно, кто-нибудь еще сталкивался с этим? или слышал об обходном пути?

Документ FileUpload(): http://help.adobe.com/en_US/ColdFusion/9.0/CFMLRef/WSd160b5fdf5100e8f36f73035129d9e70a92-8000.html

person wtyoung    schedule 18.07.2013