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)
