Python Django如何打开和显示保存的docx或pdf文档

Python Django如何打开和显示保存的docx或pdf文档,python,django,pdf,docx,Python,Django,Pdf,Docx,我目前正在使用Django 1.87开发一个题库网站,允许用户登录并查看保存的过去的问题。到目前为止,我已经能够根据用户选择在数据库中显示过去问题的链接。过去的问题以文档或PDF格式上传并存储在媒体目录中 我希望登录用户能够打开并阅读过去问题的内容,然后再决定是打印还是下载。到目前为止,我已经能够显示到文档的链接列表,当我单击链接时,它会将文档下载到我的计算机上。我真正想要实现的是,用户能够在单击下载之前单击链接并从浏览器中打开文档,但在此输入代码或打印 这是我的密码: models.py 班级

我目前正在使用Django 1.87开发一个题库网站,允许用户登录并查看保存的过去的问题。到目前为止,我已经能够根据用户选择在数据库中显示过去问题的链接。过去的问题以文档或PDF格式上传并存储在媒体目录中

我希望登录用户能够打开并阅读过去问题的内容,然后再决定是打印还是下载。到目前为止,我已经能够显示到文档的链接列表,当我单击链接时,它会将文档下载到我的计算机上。我真正想要实现的是,用户能够在单击下载之前单击链接并从浏览器中打开文档,但在此输入代码或打印

这是我的密码:

models.py

班级问题库(models.Model):

views.py def问题(请求、选择课程):

在我的模板中,我有这个

QuestionsPage.html

<title> Question Papers </title> 

问题文件


{{{selCourse}}的问题文件清单
选择要查看、下载或打印的问题
{%if Quest_For_course%}
    {Quest中的问题百分比{u课程百分比}
  • {%endfor%}
{%else%} 目前本课程没有可用的问题 {%endif%}


如何使过去的问题文档可以查看?在具有下载和打印按钮的窗体上。谢谢

看看这个-@Compadre我很感谢裁判的链接,它真的帮助我澄清了很多我困惑的事情。但现在我面临着另一个挑战和它的驱动螺母,因为我尝试了这么多的方法来获得文件工作的绝对路径,我太困惑了,不知道还能做什么。这是我所做的。有人应该在这方面帮助我,我卡住了,我不知道还有什么可以尝试的。这里的代码为我提供了要输出的文件的绝对路径file\u path=os.path.join(settings.MEDIA\u ROOT,'QuestionPapers',file\u Name),但我仍然得到filenotfounderror您需要根据此文档页面更新您的设置,我想您会同意,如果django可以为您的文件系统中的任何文件提供服务,这不是个好主意
context = RequestContext(request)
SelCourse = sel_course.replace('_',' ')
context_dict = {'SelCourse':SelCourse}

try:
    Quest_For_course = QuestionBank.objects.filter(course_code = SelCourse)
    context_dict['Quest_For_course'] = Quest_For_course

except course_code.DoesNotExist:
    pass

return render_to_response('Qbank/QuestionsPage.html', context_dict, context)
<title> Question Papers </title> 
<body> 
    <h2> LIST OF QUESTION PAPERS FOR {{selCourse}} </h2>

    <h3> Select question to view, download or print it</h3>

    {% if Quest_For_course %}

    <ul>{% for ques in Quest_For_course %}

    <li><a href="{{ques.question_papers.url}}"> 

    {{ques.question_papers}} </a></li>

    {%endfor%}
    </ul>

    {%else%}
    <strong> THERE ARE NO AVAILABLE QUESTION FOR THIS CLASS AT THE MOMENT </strong>
    {%endif%}
</body>