zoukankan      html  css  js  c++  java
  • django FileFIeld和ImageField 上传路径改写

    def get_file_path(instance, filename):
        return 'file/document/%s/%s/%s' % (instance.period.code, instance.student.college.code, filename)
    
    
    class Document(models.Model):
        title = models.CharField(max_length=50, blank=True, verbose_name="文档名", default="")
        student = models.ForeignKey('accounts.Student', verbose_name="学生")
        period = models.ForeignKey('systemconfig.Periods', verbose_name="阶段")
        file = models.FileField(upload_to=get_file_path, verbose_name="文档", blank=True, null=True)
        mark = models.SmallIntegerField(null=True, blank=True, verbose_name="标记")
        create_time = models.DateTimeField(verbose_name="添加时间", auto_now_add=True)
    
        class Meta:
            verbose_name = "学生报告文档"
            verbose_name_plural = "学生报告文档"

    重点就是get_file_path

    def get_file_path(instance, filename):
    return 'file/document/%s/%s/%s' % (instance.period.code, instance.student.college.code, filename)


    class Document(models.Model):
    title = models.CharField(max_length=50, blank=True, verbose_name="文档名", default="")
    student = models.ForeignKey('accounts.Student', verbose_name="学生")
    period = models.ForeignKey('systemconfig.Periods', verbose_name="阶段")
    file = models.FileField(upload_to=get_file_path, verbose_name="文档", blank=True, null=True)
    mark = models.SmallIntegerField(null=True, blank=True, verbose_name="标记")
    create_time = models.DateTimeField(verbose_name="添加时间", auto_now_add=True)

    class Meta:
    verbose_name = "学生报告文档"
    verbose_name_plural = "学生报告文档"
  • 相关阅读:
    C++11新特性
    Qt操作xml
    指针和引用的区别
    QT软件主题切换
    常见的临时变量的生成场景
    QQuickWidget+QML设置背景透明
    idea maven Could not transfer artifact
    Java项目启动时执行指定方法的几种方式
    解决bootstrap-table在切换分页后再次查询报错404问题
    bootstrap:表单必填项*标识,及提交前校验
  • 原文地址:https://www.cnblogs.com/tuifeideyouran/p/4384522.html
Copyright © 2011-2022 走看看