如何使用管理面板将照片添加到模板中



将其视为我的models.py文件。

from django.db import models
class alldets(models.Model):
first_name = models.CharField(max_length=50, default ='first name')
second_name = models.CharField(max_length=50, default='second name')
school = models.CharField(max_length=50, default='school name')
county = models.CharField(max_length=50, default='where from')
phone = models.CharField(max_length=20, default='phone number')
age = models.IntegerField(default='254')
def __str__(self):
return self.first_name

如何将照片添加到其中,然后将其解析为views.py,然后解析为模板?

首先安装枕头

pip install pillow

然后models.py

class AllDets(models.Model):
first_name = models.CharField(max_length=50, default ='first name')
second_name = models.CharField(max_length=50, default='second name')
school = models.CharField(max_length=50, default='school name')
county = models.CharField(max_length=50, default='where from')
phone = models.CharField(max_length=20, default='phone number')
age = models.IntegerField(default='254')
photo = models.ImageField(upload_to='images/photos')
def __str__(self):
return self.first_name

如果您想在django管理中提供该模型,请在admin.py中注册该模型

from .models import AllDets
admin.site.register(AllDets)

您可以像往常一样在views.py中检索数据

from .models import AllDets

def index(request):
if request.method == 'POST':
form = DocumentForm(request.POST, request.FILES)
if form.is_valid():
form.save()
return redirect('home')
else:
print(form.errors)
else:
form = DocumentForm()
context = {
'form': form,
'all_dets' : AllDets.objects.all(),
}
return render(request, 'app/index.html', context)

然后在index.html中,您可以按照以下渲染数据

{{all_dets.first_name}}
{{all_dets.second_name}}
{{all_dets.school}}
{{all_dets.county}}
{{all_dets.phone}}
{{all_dets.age}}
{{all_dets.photo.url}}

并记住在您的表单上添加enctype

<form method="post" enctype="multipart/form-data">
{% csrf_token %}
{{ form.as_p }}
<button type="submit">Upload</button>
</form>

最新更新