Rails: загрузка файлов с помощью скрепки - PullRequest
3 голосов
/ 07 июля 2011

Я хотел бы использовать скрепку для загрузки файлов.С базовыми настройками из коробки я смог загрузить файл в каталог по умолчанию (что-то в public / systems ...) Однако, когда я попытался изменить URL или путь (или оба):

class Cvit < ActiveRecord::Base
    has_attached_file :fileup, :path => ":rails_root/public/data/01_fasta"
end

Я теряю права доступа к каталогу 01_fasta, после выполнения над ним chmod 777, я замечаю, что файл там, но его имя имеет что-то вроде:} вместо: rails_root.

В чем дело ????

РЕШЕНО : путь: url и: путь должны указывать на файл, а не на каталог,Поэтому мне нужно было что-то вроде

class Cvit < ActiveRecord::Base
  has_attached_file :fileup,
    :url => "/data/01_fasta/:basename.:extension",
    :path => ":rails_root/public/data/01_fasta/:basename.:extension"
end 

Ответы [ 2 ]

3 голосов
/ 07 июля 2011
 has_attached_file :doc, :path => ":rails_root/public/system/attachments/:id/:filename"


def filename
"/system/attachments/#{self.id}/#{self.doc_file_name}"
end

у меня работает

1 голос
/ 11 июля 2011

: url и: путь должны указывать на файл, а не на каталог. Поэтому мне нужно было что-то вроде

class Cvit < ActiveRecord::Base
  has_attached_file :fileup,
    :url => "/data/01_fasta/:basename.:extension",
    :path => ":rails_root/public/data/01_fasta/:basename.:extension"
end 
...