我有一个将资产(策略)发布到 html 页面的应用程序。每个页面都有一个工作编号(例如 AC14245)和几个策略。此外,还有几个客户端,每个客户端都有许多页面。为了促进这一点,我有一个简单的模型,如下所示:
class TacticEntry(models.Model):
client = models.CharField(max_length=50, choices=CLIENT_CHOICES)
job_number = models.CharField(max_length=30, unique=False, blank=False, null=False)
cell_number = models.CharField(max_length=4, unique=False, blank=True, null=True)
posting_page = models.ForeignKey(TacticPage)
post_title = models.CharField(max_length=64, unique=False, blank=True, null=True)
date = models.DateField(("Date"), default=datetime.date.today)
post_type = models.CharField(max_length=64, choices=POST_CHOICES)
docfile = models.FileField(upload_to=content_file_name, blank=True, null=True)
add_pdf = models.NullBooleanField()
link_pdf = models.FileField(upload_to=content_file_name, blank=True, null=True)
add_html = models.NullBooleanField()
link_html = models.FileField(upload_to=content_file_name, blank=True, null=True)
add_report = models.NullBooleanField()
link_report = models.FileField(upload_to=content_file_name, blank=True, null=True)
add_zip = models.NullBooleanField()
link_zip = models.FileField(upload_to=content_file_name, blank=True, null=True)
def __unicode__ (self):
return u'%s %s' % (self.client, self.job_title)
正如预期的那样,在管理员中,这将返回一个 TacticEntry 列表,其中列出了如下策略:
ACME AC111111
ACME AC111112
ACME AC111113
...
由于大量记录,这很快就会成为问题。有没有一种方法可以配置管理员或模型中的 return 语句以在管理员中创建子目录/文件夹,以便将每个客户端策略分组在自己的文件夹中?