how to put files in different dirs

33 views
Skip to first unread message

老张

unread,
Feb 4, 2015, 8:50:11 AM2/4/15
to django...@googlegroups.com
hi . Guys
i'm designing a django web site,which produce many files.
if all these files are in ONE directory。i'm afraid that performance is a problem.
even i can put many entries in  stattic-dirs in setting.py.but it seems only one entry in stattic-dirs be used
Can anyone tell me how  i  can put files in different dirs , or in different dirs with same parent dir ?
Thanks !





Rodrigo Zayit

unread,
Feb 25, 2015, 10:36:35 AM2/25/15
to django...@googlegroups.com, paii...@163.com
Hi!

I didn't understand your question. You don't need to put all your files in the same dir... you can create folders like "images", "images/products", "css", "js", etc....
Or are you asking about "media files"? I mean, files that will be uploaded through admin area...?

Best regards,
Rodrigo Zayit

163 email

unread,
Feb 25, 2015, 8:31:47 PM2/25/15
to django-users
yes , what i mean is "media files".
there are so many file,may be several thousands ,to be uploaded from client to server. 
if all files in one dir , it'll be slow. 
but i don't find any way  put files in different dirs just using django.
now i write a function to put  files in different dirs ,but it complex.
is there any easy way ?
Thanks !

163 email
--
You received this message because you are subscribed to the Google Groups "Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to django-users...@googlegroups.com.
To post to this group, send email to django...@googlegroups.com.
Visit this group at http://groups.google.com/group/django-users.
To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/12150c6c-e90e-414c-be8b-e77d4d220308%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Michael Pöhn

unread,
Feb 26, 2015, 4:18:29 AM2/26/15
to django...@googlegroups.com
On 26.02.2015 02:30, 163 email wrote:
> yes , what i mean is "media files".
> there are so many file,may be several thousands ,to be uploaded
> from client to server.
> if all files in one dir , it'll be slow.
> but i don't find any way put files in different dirs just using django.
> now i write a function to put files in different dirs ,but it complex.
> is there any easy way ?
> Thanks !
> ------------------------------------------------------------------------
> 163 email

There is an easy way for accomplishing what you want mentioned in
djangos docs:

»For example, say your MEDIA_ROOT is set to '/home/media', and upload_to
is set to 'photos/%Y/%m/%d'. The '%Y/%m/%d' part of upload_to is
strftime() formatting; '%Y' is the four-digit year, '%m' is the
two-digit month and '%d' is the two-digit day. If you upload a file on
Jan. 15, 2007, it will be saved in the directory
/home/media/photos/2007/01/15.«

https://docs.djangoproject.com/en/1.7/ref/models/fields/#django.db.models.FileField.storage

Rodrigo Zayit

unread,
Feb 26, 2015, 6:34:03 AM2/26/15
to django...@googlegroups.com, michae...@fsfe.org
Yeah! Or you can write your own method to upload_to. It is easy too.

I've made a simple example:


This example save the pictures in:

media/images/products/1/product-slug/randomstring.ext

Where "1" is the id of the product's category.


Best regards,
Rodrigo Zayit
Reply all
Reply to author
Forward
0 new messages