Python 在管理员批准Django中上载的文件之前限制上载
我是django的新手。我正在做一个用户可以上传图像的项目。但我想确保用户在管理员批准之前不能上传图像或文件。现在我该怎么做,已经为此准备好了模型,但是由于django的经验不足,我无法完成它,或者你可以说我没有任何线索,如果可以,现在请帮助我,我在这里给出一个非常简单的代码 这是上传图像的my forms.pyPython 在管理员批准Django中上载的文件之前限制上载,python,django,file-upload,Python,Django,File Upload,我是django的新手。我正在做一个用户可以上传图像的项目。但我想确保用户在管理员批准之前不能上传图像或文件。现在我该怎么做,已经为此准备好了模型,但是由于django的经验不足,我无法完成它,或者你可以说我没有任何线索,如果可以,现在请帮助我,我在这里给出一个非常简单的代码 这是上传图像的my forms.py from django import forms class DocumentForm(forms.Form): photo = forms.ImageField(
from django import forms
class DocumentForm(forms.Form):
photo = forms.ImageField(
label='Select a file'
)
这是我的模特。派克
from django.db import models
from django.contrib.auth.models import User
class Photo(models.Model):
name = models.CharField(max_length = 100)
photo = models.ImageField(upload_to = 'photos', blank=False,null=True)
approved = models.nullBooleanField()
uploaded_time = models.DateTimeField(auto_now_add = True,auto_now = False)
description = models.CharField(max_length = 80 , blank = False , null = True)
approved_by = models.CharField(max_length = 100)
user = models.ForeignKey(User)
在这里,我为approved创建了一个布尔字段
这是文件/图像上传的视图
def UserImageUpload(request):
if request.method == 'POST':
form = DocumentForm(request.POST,request.FILES)
if form.is_valid():
if approved:
newdoc = Photo(photo = request.FILES['photo'],user = request.user)
newdoc.save()
else:
else:
form = DocumentForm()
uploaded_image = Photo.objects.all()
return render_to_response('myprofile/user_image_upload.html',{'uploaded_image':uploaded_image,'form':form},context_instance = RequestContext(request))
{% extends 'base.html'%}
{% block title%}User Image Upload {% endblock %}
{%block content%}
<form action="" method="post" enctype="multipart/form-data">
{% csrf_token %}
<p>{{ form.non_field_errors }}</p>
<p>{{ form.photo.label_tag }} {{ form.photo.help_text }}</p>
<p>
{{ form.photo.errors }}
{{ form.photo }}
</p>
<p><input type="submit" value="Upload" /></p>
</form>
{%endblock%}
这是文件或图像上传的模板
def UserImageUpload(request):
if request.method == 'POST':
form = DocumentForm(request.POST,request.FILES)
if form.is_valid():
if approved:
newdoc = Photo(photo = request.FILES['photo'],user = request.user)
newdoc.save()
else:
else:
form = DocumentForm()
uploaded_image = Photo.objects.all()
return render_to_response('myprofile/user_image_upload.html',{'uploaded_image':uploaded_image,'form':form},context_instance = RequestContext(request))
{% extends 'base.html'%}
{% block title%}User Image Upload {% endblock %}
{%block content%}
<form action="" method="post" enctype="multipart/form-data">
{% csrf_token %}
<p>{{ form.non_field_errors }}</p>
<p>{{ form.photo.label_tag }} {{ form.photo.help_text }}</p>
<p>
{{ form.photo.errors }}
{{ form.photo }}
</p>
<p><input type="submit" value="Upload" /></p>
</form>
{%endblock%}
{%extends'base.html%}
{%block title%}用户图像上载{%endblock%}
{%block content%}
{%csrf_令牌%}
{{form.non_field_errors}}
{{form.photo.label_tag}{{{form.photo.help_text}}
{{form.photo.errors}
{{form.photo}
{%endblock%}
我认为应该是这样的:
1.用户上传图片,您将approved设置为false。
2.在“管理”页面上,您可以将“已批准”更改为“真”。
3.在现场显示图像之前,请检查图像是否已批准