Django Image Uploads
Models.py
from django.db import models
# Create your models here.
class Image(models.Model):
name = models.CharField(max_length=50)
image = models.ImageField(blank=True,upload_to='img')
def __str__(self):
return f"{self.name}"
Admin.py
from django.contrib import admin
from .models import Image
# Register your models here.
admin.site.register(Image)
Views.py
from django.shortcuts import render
from .models import Image
# Create your views here.
def view(request):
data = Image.objects.all()
context = {
'data':data
}
return render(request,"index.html",context)
URLS.py
from django.urls import path
from . import views
urlpatterns = [
path('',views.view),
]
HMTL (Index.html)
<!DOCTYPE html>
<html>
<head>
<style>
ul {
list-style-type: none;
margin: 0px 0px;
padding: 10px 400px;
overflow: hidden;
background-color: #333;
}
li {
float: left;
}
li a {
display: block;
color: white;
text-align: center;
padding: 14px 16px;
text-decoration: none;
}
li a:hover {
background-color: #111;
}
div.g {
display: inline-block;
background-color:#b8ffdb;
margin: 30px 30px;
padding:10px 10px;
}
</style>
</head>
<body>
<ul>
<li><a class="active" href="#home">Home</a></li>
<li><a href="/data">Data</a></li>
<li><a href="/home">Register</a></li>
<li><a href="#about">About</a></li>
</ul>
{% for x in data %}
<div class ="g">
<img src="{{ x.image.url }}" width="150" height="100">
<p>{{ x.name }}</p>
</div>
{% endfor %}
</body>
</html>
Settings.py
MEDIA_ROOT = BASE_DIR / "upload"
MEDIA_URL = "/media/"
URLS.py (project folder)
from django.conf.urls.static import static
from django.conf import settings
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('urapp.urls')),
] + static (settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
Youtube link- https://youtu.be/Bzsj7i1Cd0g
Comments
Post a Comment