Рубрики
Без рубрики

Django Photo Gallary | Django Project

Привет друзья, WhatsApp? Я надеюсь, что у тебя все будет хорошо. В этом блоге я показываю вам удивительный проект – Phot … Tagged с Django, Python, программированием.

Привет друзья, WhatsApp? Я надеюсь, что у тебя все будет хорошо. В этом блоге я показываю вам удивительный проект – фото галаре в Django Framework.

Демо видео

Исходный код

1.) settings.py (Добавить код)

#Media Files
MEDIA_ROOT = 'D:\\django_projects\\dj_gallary\\main\\static\\media'
MEDIA_URL = 'media/'

2.) Проект/URLS.PY.

from django.contrib import admin
from django.urls import path, include

from django.conf import settings
from django.conf.urls.static import static

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', include('main.urls'))
] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)

3.) views.py

from django.shortcuts import render, redirect
from django.http import HttpResponse
from django.views.generic import TemplateView
from .models import Post
from django.contrib import messages

# Create your views here.
class IndexView(TemplateView):
    template_name = 'index.html'
    def get(self, request):
        all_posts = Post.objects.all().order_by('-id')
        params = {"posts": all_posts}
        return render(request, self.template_name, params)


class UploadView(TemplateView):
    template_name = 'upload.html'
    def get(self, request):
        return render(request, self.template_name)
    def post(self, request):
        img_title = request.POST['title']
        imgName = request.FILES['img_name']
        add_img = Post(title=img_title, img_field=imgName)
        add_img.save()
        messages.success(request, 'Image Added Succefully.')
        # print(imgName, title)
        return render(request, self.template_name)


class DeleteView(TemplateView):
    def get(self, request, id):
        delete_post = Post.objects.get(id=id)
        delete_post.delete()
        messages.success(request, 'Image Deleted Succefully.')
        return redirect('/')

4.) приложение/URLS.PY.

from django.urls import path
from . import views



urlpatterns = [
    path('', views.IndexView.as_view(), name='index'),
    path('upload/', views.UploadView.as_view(), name='upload'),
    path('delete//', views.DeleteView.as_view(), name='delete_img')
]

5.) models.py

from django.db import models

# Create your models here.
class Post(models.Model):
    title = models.CharField(max_length=200)
    img_field = models.ImageField(upload_to='uploads/')
    date = models.DateField(auto_now_add=True)

    def __str__(self):
        return self.title

6.) admin.py

from django.contrib import admin
from .models import Post

# Register your models here.
admin.site.register(Post)

7.) Шаблоны/index.html.




  
    
    
    
    {% load static %}
    
    

    Django Photo Gallary
  
  
    

Django Photo Gallary

{% if messages %}
{% for message in messages %} {% endfor%}
{% endif %}
{% for post in posts %}
{% static post.img_field.url %}

{{post.title}} Delete

{{post.date}}

{% endfor %}

8.) Шаблоны/upload.html.




  
    
    
    
    {% load static %}
    
    

    Django Photo Gallary
  
  

    

Django Photo Gallary

{% if messages %}
{% for message in messages %} {% endfor%}
{% endif %}
{% csrf_token %}

Оригинал: “https://dev.to/madhubankhatri/django-photo-gallary-django-project-10h1”