Python 如何允许用户在Django中上传带有图片的帖子?
这就是我现在在我的模型中所拥有的Python 如何允许用户在Django中上传带有图片的帖子?,python,django,image,video,imagefield,Python,Django,Image,Video,Imagefield,这就是我现在在我的模型中所拥有的 class Document(models.Model): docfile = models.FileField(upload_to='documents/%Y/%m/%d') img = models.ImageField(upload_to='documents/%Y/%m/%d', null=True, blank=True) 管理员# views.py# list.html# {%extends“base.html”%} {%load
class Document(models.Model):
docfile = models.FileField(upload_to='documents/%Y/%m/%d')
img = models.ImageField(upload_to='documents/%Y/%m/%d', null=True, blank=True)
管理员#
views.py#
list.html#
{%extends“base.html”%}
{%load staticfiles%}
{%block content%}
传真
琼伯伦先生{
背景色:#F451E;
颜色:#fff;
}
传真
谁知道电子邮件会再次变得有趣
{%endblock%}
{%block content2%}
最小Django文件上载示例
现职
{%if文档%}
{文档%中的文档为%}
{%endfor%}
{%else%}
没有文件
{%endif%}
{%csrf_令牌%}
{{form.non_field_errors}}
{{form.docfile.label_tag}{{{form.docfile.help_text}}
{{form.docfile.errors}
{{form.docfile}
{%endblock%}
当我这样做的时候,任何反馈都会很好,它只是显示一个没有图片的链接
我希望它像一篇文章或博客,但是有一个imagefield,可能会有一个故事,然后还有一张图片,但是有django的imagefield可能会是一个麻烦,如果你问我这么简单但这么难,请帮助我首先-不要使用
列表
作为视图名称。其次,在另一个html标记中有一个“`”,这是无效的。首先修复这些。是的,已更正,但仍然只获取文件链接,而不是网页上的图片。首先,不要将列表
用作视图名称。其次,在另一个html标记中有一个“`”,这是无效的。首先修复这些。是的,已更正,但仍然只获取文件链接,而不是网页上的图片
from django.contrib import admin
from imagine.models import Document
admin.site.register(Document)
from django.shortcuts import render_to_response
from django.template import RequestContext
from django.core.urlresolvers import reverse
from imagine.models import Document
from forms import DocumentForm
def list(request):
# Handle file upload
if request.method == 'POST':
form = DocumentForm(request.POST, request.FILES)
if form.is_valid():
newdoc = Document(docfile = request.FILES['docfile'])
newdoc.save()
# Redirect to the document list after POST
return HttpResponseRedirect(reverse('facetut.views.list'))
else:
form = DocumentForm() # A empty, unbound form
# Load documents for the list page
documents = Document.objects.all()
# Render list page with the documents and the form
return render_to_response(
'list.html',
{'documents': documents, 'form': form},
context_instance=RequestContext(request))
{% extends "base.html" %}
{% load staticfiles %}
{% block content %}
<head>
<!-- Theme Made By www.w3schools.com - No Copyright -->
<title>facemail</title>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css">
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.12.0/jquery.min.js"></script>
<script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>
<style>
.jumbotron {
background-color: #f4511e;
color: #fff;
}
</style>
</head>
<body>
<div class="jumbotron text-center">
<h1>FaceMail</h1>
<p>who knew Email could be fun aGain</p>
</div>
{% endblock %}
{% block content2 %}
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Minimal Django File Upload Example</title>
</head>
<body>
<h2>Current Posts</h2>
<!-- List of uploaded documents -->
{% if documents %}
<ul>
{% for document in documents %}
<li><a href="{{ document.docfile.url }}">{{ document.docfile.name }}</a></li>
<img src="{{ document.img.url }}">
{% endfor %}
</ul>
{% else %}
<p>No documents.</p>
{% endif %}
<br>
<br>
<!-- Upload form. Note enctype attribute! -->
<form action="{% url "list" %}" method="post" enctype="multipart/form-data">
{% csrf_token %}
<p>{{ form.non_field_errors }}</p>
<p>{{ form.docfile.label_tag }} {{ form.docfile.help_text }}</p>
<p>
{{ form.docfile.errors }}
{{ form.docfile }}
</p>
<p><input type="submit" value="Upload" /></p>
</form>
</body>
</html>
{% endblock %}