【问题标题】:Django uploaded files not displaying in template pageDjango上传的文件未显示在模板页面中
【发布时间】:2017-07-05 05:42:46
【问题描述】:

我正在尝试显示最近发布的前 5 个文件,但似乎没有显示。 当我使用 Model.objects.all() 获取所有对象时,它会为我提供 Db 中的所有对象,但是当我尝试获取前 5 个对象时,它不会显示。 请帮助并建议我。谢谢

我的views.py是

def about_experiment(request, ex_link_name):
  researcher = None
  study = None
  posts = None
  exp = get_object_or_404(Experiment,link_name = ex_link_name)
  high_scores = ScoreItem.objects.filter(experiment=exp,active=True)
  context = {
    'request': request,
    'exp':exp,
    'high_scores': high_scores,
    'awards':AwardItem.objects.filter(experiment=exp,visible=True),
    'posts':Help.objects.filter().order_by('-date')[0],
    'documents':Help.objects.filter().order_by('-document')[:5]
  }

  if exp.about_file:
    context['about_file'] = settings.EXPERIMENT_DIRS+exp.about_file.get_include_path()

  if request.method == 'POST':
        form = AboutHelp(request.POST, request.FILES)
        if form.is_valid():
            obj = form.save(commit = False)
            obj.save()
            return HttpResponseRedirect('/about/%s/' %ex_link_name)
            #return redirect(reverse('lazer.views.about_experiment', kwargs={ 'ex_link_name':obj.link_name }))

  else:
      form = AboutHelp()

  return render(request, 'about_experiment.html', context)

目标模板页面

  <div class="tab-pane" id="irb">
          <h4> List of file(s) uploaded:</h4>
        <!--File upload-->
            {% if documents %}
                <ul>
                    <li><a href="#"> {{ documents.document }} </a></li>
                </ul>
            {% else %}
                <p>No such documents available.</p>
            {% endif %}
       <!--File upload ends-->

【问题讨论】:

    标签: django django-models django-forms django-templates django-views


    【解决方案1】:

    documents 是一个查询集,您正在选择前 5 个。您需要这样做。

      <div class="tab-pane" id="irb">
          <h4> List of file(s) uploaded:</h4>
        <!--File upload-->
                {% for doc in documents %}
                <ul>
                    <li><a href="#"> {{ doc.document }} </a></li>
                </ul>
                {% empty %}
                <p>No such documents available.</p>
                {% endfor %}
       <!--File upload ends-->
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-10-25
      • 2012-06-03
      • 1970-01-01
      • 2019-09-03
      • 1970-01-01
      • 2018-01-06
      • 1970-01-01
      相关资源
      最近更新 更多