Django를 사용하는 알 수 없는 이미지 업데이터
Unknown_Updater
알 수 없는 폴더에서 이미지를 업데이트하거나 Django를 사용하여 디렉토리에서 이미지를 삭제합니다.
이것은 내가 Django로 수행한 사이드 실험 중 하나입니다.
전제 조건
Django
python
Django에서 앱 만들기
python3 manage.py startapp updater
settings.py
디렉토리를 설정해야 하기 위해 백엔드에서 HTML 페이지를 통합해야 합니다.
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
이미지를 가져올 정적 디렉토리 설정
STATIC_URL = '/updater/'
STATICFILES_DIRS = [os.path.join(BASE_DIR, "updater")]
model.py
사용자 간의 고유성을 식별하는 데 사용할 수 있는 세 개의 필드 이름, 두 번째 이름 및 uid가 있는 데이터베이스 생성
from django.db import models
class UserDetail(models.Model):
first_name = models.CharField(max_length=50)
last_name = models.CharField(max_length=50)
hybrid_uid = models.CharField(max_length=50, default="")
보기.py
view.py에서 우리는 그 안에 있는 모든 비즈니스 로직을 수정합니다.
from django.shortcuts import render
import os
import shutil
# Create your views here.
from django.http import HttpResponseRedirect
from django.shortcuts import redirect
from .models import UserDetail
from unknown_updater import settings
#grab all the images in list and render in frontend
def index(request ):
fileNames = os.listdir('updater/unknown/')
hists = [ file for file in fileNames]
print(hists)
names = UserDetail.objects.all()
print(names)
#extract value from form from forntend
if request.method == 'POST' :
if request.POST['submit'] == 'Submit':
a = request.POST['user_id']
firstName, lastName = a.split(' ', )
print(firstName)
print(lastName)
uids = UserDetail.objects.get(first_name=firstName ,last_name = lastName)
print(uids.hybrid_uid)
files = request.POST["img"]
source_directory = settings.BASE_DIR+"/updater/unknown/"+str(files)
destination_directory = settings.BASE_DIR+"/updater/known_user/"+str(uids.hybrid_uid)+"/"+str(files)
shutil.move(source_directory , destination_directory)
print(files)
return HttpResponseRedirect('/polls')
else:
if request.POST['submit'] == 'delete':
files = request.POST["img"]
os.remove(settings.BASE_DIR+"/updater/unknown/"+str(files))
print(files)
return HttpResponseRedirect('/polls')
return render(request , 'home.html', {'hists':hists , 'names' : names})
전체 소스 코드를 보려면 GitHub 링크를 클릭하십시오.
https://github.com/cyber-hoax/Unknown_Updater/blob/main/README.md
Reference
이 문제에 관하여(Django를 사용하는 알 수 없는 이미지 업데이터), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/cyberhoax/unknown-image-updater-using-django-3jh4
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Django
python
python3 manage.py startapp updater
TEMPLATES = [
{
'BACKEND': 'django.template.backends.django.DjangoTemplates',
'DIRS': [os.path.join(BASE_DIR, 'templates')],
'APP_DIRS': True,
'OPTIONS': {
'context_processors': [
'django.template.context_processors.debug',
'django.template.context_processors.request',
'django.contrib.auth.context_processors.auth',
'django.contrib.messages.context_processors.messages',
],
},
},
]
STATIC_URL = '/updater/'
STATICFILES_DIRS = [os.path.join(BASE_DIR, "updater")]
from django.db import models
class UserDetail(models.Model):
first_name = models.CharField(max_length=50)
last_name = models.CharField(max_length=50)
hybrid_uid = models.CharField(max_length=50, default="")
from django.shortcuts import render
import os
import shutil
# Create your views here.
from django.http import HttpResponseRedirect
from django.shortcuts import redirect
from .models import UserDetail
from unknown_updater import settings
#grab all the images in list and render in frontend
def index(request ):
fileNames = os.listdir('updater/unknown/')
hists = [ file for file in fileNames]
print(hists)
names = UserDetail.objects.all()
print(names)
#extract value from form from forntend
if request.method == 'POST' :
if request.POST['submit'] == 'Submit':
a = request.POST['user_id']
firstName, lastName = a.split(' ', )
print(firstName)
print(lastName)
uids = UserDetail.objects.get(first_name=firstName ,last_name = lastName)
print(uids.hybrid_uid)
files = request.POST["img"]
source_directory = settings.BASE_DIR+"/updater/unknown/"+str(files)
destination_directory = settings.BASE_DIR+"/updater/known_user/"+str(uids.hybrid_uid)+"/"+str(files)
shutil.move(source_directory , destination_directory)
print(files)
return HttpResponseRedirect('/polls')
else:
if request.POST['submit'] == 'delete':
files = request.POST["img"]
os.remove(settings.BASE_DIR+"/updater/unknown/"+str(files))
print(files)
return HttpResponseRedirect('/polls')
return render(request , 'home.html', {'hists':hists , 'names' : names})
Reference
이 문제에 관하여(Django를 사용하는 알 수 없는 이미지 업데이터), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/cyberhoax/unknown-image-updater-using-django-3jh4텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)