загрузка файла с attachment_fu - PullRequest
0 голосов
/ 04 октября 2010

Прямо сейчас я храню файлы внутри публичного каталога в моем приложении.

Я хочу загрузить файл по определенному пути, например http://uploadfacility.com.

У меня есть логин и пароль для этого конкретного пути.

http://uploadfacility.com/test?username=test1&password=test1

Как я могу хранить файлы по определенному пути вне моего приложения.

Мне нужно изменить: хранилище или что-то еще ??

1 Ответ

0 голосов
/ 25 октября 2010

Вам необходимо создать новый модуль (в плагине он называется 'backend'), Technoweenie::AttachmentFu::Backends.const_get('YourChosenBackend').

Контракт для этого бэкэнда, я боюсь, неявно определен в других бэкэнд-модулях. Вы можете обратиться к s3, file_system или db. Под контрактом я подразумеваю, что есть некоторые методы, которые необходимо переопределить / определить. Несколько примеров (я взял их у file_sysyem_backend.rb:

full_filename(thumbnail = nil)                                                                                                                                         
base_path                                                                                                                                                              
attachment_path_id                                                                                                                                                     
partitioned_path(*args)                                                                                                                                                
public_filename(thumbnail = nil)                                                                                                                                       
filename=(value)                                                                                                                                                       
create_temp_file                                                                                                                                                       
destroy_file                                                                                                                                                           
rename_file                                                                                                                                                            
save_to_storage                                                                                                                                                        
current_data

После того как вы определили свой бэкэнд, вы можете передать опцию :storage => :your_chosen в has_attachment.

...