对不起,如果这是重复的,我发现了很多关于此的零散信息,但不知道如何将它们放在一起。
在我的模型中,我有:
class Project(models.Model):
title = models.CharField(max_length=100)
description = models.TextField()
technology = models.CharField(max_length=20)
webbody = models.TextField()
# models.FileField(upload_to='webcontent/projects')
image = models.ImageField(upload_to='img/projects')
def __str__(self):
return self.title
我可以在 webbody 中输入 HTML 并使用 admin 在模板中显示它,没问题:
{{project.webbody | safe}}
但我最初拥有的不是文本字段,而是带有文件字段的注释行。我可以通过管理员上传文件,这很好用,但为了我的爱,我不能在模板中显示它。
我试过了:
{{project.webbody.url}}
{% include project.webbody %}
如何正确处理django模板中的外部HTML文件?
编辑:我向管理员添加了一个summernote,以便我可以在管理员内部编辑HTML,这实际上比我原来的想法要好得多,但仍然 - 问题仍然存在,谢谢! :)
答案 0 :(得分:0)
您需要阅读文件。
这是您可以在您的视图中执行的操作:
def myview(request):
project = Project.objects.get()
content = open(project.webbody.path).read()
return render(
request, 'mytemplate.html', {
'project': project,
'content': content,
}
)
您可以阅读有关如何在 Django here 中存储文件的更多信息。