У меня есть модель, как этотДжанго QuerySet фильтр()
class File(models.Model):
folder=models.ForeignKey(Folder, null=True, blank=True)
uploaded_file=models.FileField(upload_to=get_upload_path)
pub_date = models.DateTimeField('date published',default=timezone.now())
tag=models.ManyToManyField(FileTag)
notes=models.TextField(max_length=200)
uploader=models.ForeignKey(User)
def __unicode__(self):
return str(self.uploaded_file)
#return os.path.basename(self.uploaded_file.name)
def filename(self):
return os.path.basename(self.uploaded_file.name)
я хочу сделать somethig как этот
sr_files=File.objects.filter(filename__contains=keyword)
, но я не могу использовать фильтр с именем файла() самостоятельно определенная функция Plz помощь
Вот мой код шаблона
{% if sr_files %}
<ul>
{% for rf in sr_files %}
<li><a href="/documents/{{rf.uploaded_file}}">{{ rf.filename }}</a></li>
{% endfor %}
</ul>
{% else %}
<p>No Files Found containing {{ keyword }}</p>
{% endif %}
да это дает мне желаемый результат, но я хочу sr_files быть коллекция объектов типа файла, так что я могу открыть файл, давая соответствующее ссылка с идентификатором в объекте типа файла. Вот мой код шаблона – wrufesh
@wrufesh во втором выражении для сжатия списка 'sr_files' - это действительно коллекция объектов типа файла. Над которым вы можете перебирать код шаблона. –
да, это делается .. thank u :) – wrufesh