# Attachment\_fu default path

**URL:** <https://www.ruby-forum.com/t/attachment-fu-default-path/115502>\
**Category:** Rails\
**Created:** [September 25, 2007, 8:46pm UTC](https://www.ruby-forum.com/t/attachment-fu-default-path/115502 "2007-09-25T20:46:35Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![Davi](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/ecb155/32.png) [@Davi](https://www.ruby-forum.com/u/Davi)\
**Post date:** [September 25, 2007, 8:46pm UTC](https://www.ruby-forum.com/t/attachment-fu-default-path/115502/1 "2007-09-25T20:46:35Z")

</div>

Hi all. I’ve done a little google search, but doesn’t find anything  
(with “attachment\_fu default path”) that could help me in changing  
attachment\_fu’s default path.

My model:

[audio.rb]  
has\_attachment :max\_size =\> 20.megabytes  
has\_attachment :content\_type =\> “audio/mpeg”  
has\_attachment :storage =\> :file\_system  
has\_attachment :path\_prefix =\> "public/files  
[/audio.rb]

But all my files go on been uploaded to public/files/0000/00[last  
inserted  
id]/my\_file\_name.ext.

What am I missing? I want that all my files go to public/files.

## Thank you very much amd sorry my poor english.

## Davi V.

E-mail: removed\_email\_address@domain.invalid  
MSN : removed\_email\_address@domain.invalid  
GTalk : removed\_email\_address@domain.invalid  
Skype : davi vidal  
ICQ : 138815296

---

<div class="post-metadata">

**Author:** ![Davi](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/ecb155/32.png) [@Davi](https://www.ruby-forum.com/u/Davi)\
**Post date:** [September 27, 2007, 4:14pm UTC](https://www.ruby-forum.com/t/attachment-fu-default-path/115502/2 "2007-09-27T16:14:32Z")

</div>

Em Ter 25 Set 2007, Davi escreveu:

> has\_attachment :path\_prefix =\> "public/files  
> [/audio.rb]
> 
> But all my files go on been uploaded to public/files/0000/00[last inserted  
> id]/my\_file\_name.ext.
> 
> What am I missing? I want that all my files go to public/files.
> 
> Thank you very much amd sorry my poor english.

Any tip?

## TIA,

## Davi V.

E-mail: removed\_email\_address@domain.invalid  
MSN : removed\_email\_address@domain.invalid  
GTalk : removed\_email\_address@domain.invalid  
Skype : davi vidal  
ICQ : 138815296

---

<div class="post-metadata">

**Author:** ![Davi](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/d/ecb155/32.png) [@Davi](https://www.ruby-forum.com/u/Davi)\
**Post date:** [September 27, 2007, 8:26pm UTC](https://www.ruby-forum.com/t/attachment-fu-default-path/115502/3 "2007-09-27T20:26:29Z")

</div>

Davi,  
You need to over write  
Technoweenie::Attachment\_fu::Backends::FileSystemBackend#partitioned\_path  
to change this. To do this, just write a function in your model like  
this

def partitioned\_path(\*args)  
#what ever you want it to do  
end

you should probably think hard about doing this – especially about  
directory size and scalablity. If you decide you want to, be sure to  
check out the original and understand how it works before you write  
anything. Hope this helps.

- Paul Saieg
