Custom ImageField filename

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
def upload_to(instance, filename):
    format = 'photo/%Y/%m/%d/%H%M%S'
    prefix = os.path.normpath(force_unicode(datetime.datetime.now().strftime(smart_str(format))))
    postfix = '%s%s' % (
        string.join(random.sample(string.ascii_letters + string.digits, 5), ''),
        os.path.splitext(filename)[-1],
    )
    filepath = '%s_%s' % (prefix, postfix)
    return filepath


class Test(models.Model):
    photo = models.ImageField(upload_to=upload_to)

More like this

  1. Updated FileField / ImageField with a delete checkbox by tomZ 6 years, 1 month ago
  2. Database file storage by powerfox 5 years, 2 months ago
  3. Use the primary key in FileField and ImageField filenames by exogen 5 years, 6 months ago
  4. Filter to resize a ImageField on demand by michelts 7 years ago
  5. Custom filename example with sorl-thumbnail by sajal 3 years, 2 months ago

Comments

(Forgotten your password?)