簡體   English   中英

如何在django中制作FileFieldPath的動態源路徑?

[英]How to make dynamic source path of FileFieldPath in django?

信息:我嘗試在 Django 中使用 FileFieldPath。 我想制作 FileFieldPath(path=dynamic)。 我想讓每個用戶都有自己的目錄路徑來選擇文件。 有沒有辦法讓用戶從 django Admin 定義他的路徑?

class SourcePath(models.Model):
    author = models.ForeignKey(User, on_delete=models.CASCADE)
    source = models.CharField(max_length=255)


class Articles(models.Model):
    post_by = models.ForeignKey(User, on_delete=models.CASCADE)
    file_path = models.FilePathField(path=SourcePath.source)

嘗試將路徑值設置為可調用函數

def get_path(instance, filename):
    return "site_media/jobs/%s_%s/%s" % (instance.client, instance.job_number, filename)


class Articles(models.Model):
    ....
    file_path= models.FilePathField(path=get_path, match=".*\.pdf$", recursive=True)

但我不確定這是否有效,我沒有測試過。

您可以添加路徑字段,用戶可以保存該字段的路徑,您的模型可以將其用於路徑。 這是一個例子:

class Articles(models.Model):
    post_by = models.ForeignKey(User, on_delete=models.CASCADE)
    path = models.CharField(max_length=255)
    file_path = models.FilePathField(path=self.path)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM