Backend/Python

Backend/Python

[인스타그램클론] 폼 에러메시지 표시

문제 현상 이메일에 잘못된 형식이 들어가도 에러메시지가 뜨지 않음 그냥 DB에 저장도 되지 않고 다음 페이지로 리다이렉트 됨 원인 def post(self, request): current_user = User.objects.get(pk=request.user.pk) user_form = UserForm(request.POST, instance=current_user) if user_form.is_valid(): user_form.save() # PROFILE UPDATE if hasattr(current_user, "profile"): profile = current_user.profile profile_form = ProfileForm( request.POST, request.FILES, instan..

Backend/Python

[인스타그램 클론] 단일 페이지에 모델 폼 추가하기

인스타그램 클론 코딩의 일환으로 회원가입 페이지를 만들던 중 회원가입을 완료하고 로그인하면 오류가 뜸 회원가입한 유저의 프로필 이미지와 닉네임이 없어서 오류 발생 첫번째 시도 Model에서 profile_photo 디폴트 설정 class Profile(models.Model): user = models.OneToOneField( settings.AUTH_USER_MODEL, on_delete=models.CASCADE)# 장고 유저모델 사용 nickname = models.CharField(max_length=20)# 회원가입 페이지에서 값을 받을 것임 profile_photo = models.ImageField( upload_to="profile/", blank=True, default="default..

Backend/Python

[인스타그램 클론] Vanilla JS - AJAX

인스타그램 클론 코딩 중 댓글 기능 구현을 위해 AJAX를 써야 했음 요즘 제이쿼리는 지양하는 추세라고 해서 바닐라 JS로 작성해봄 DB모델 class Photo(models.Model): user = models.ForeignKey(settings.AUTH_USER_MODEL, on_delete=models.CASCADE, related_name="photos") image = models.ImageField(upload_to="media/") filtered_image = ImageSpecField(source='image', processors=[ ResizeToFill(293, 293)], format="JPEG", options={'quality': 60}) content = models.Tex..

Backend/Python

중복값 갯수(collections.Counter)

빈 Dictionary 이용: words = "a b c d a c" word_list = words.split()# ['a', 'b', 'c', 'd', 'a', 'c'] dict = {}#빈 딕셔너리 for word in word_list: if word in dict:# 이미 있는 키 dict[word] += 1 else:# 처음 보는 키 dict[word] = 1 for key,value in dict.items(): print("{}: {}개".format(key, value), end=" ")# a: 2개 b: 1개 c: 2개 d: 1개 리스트에서 중복되는 값의 갯수를 알고 싶을 때, 값을 split()로 나눈 후 빈 딕셔너리 생성 이미 있는 경우, 없는 경우로 나눠서 갯수를 세렸다. Coun..

Backend/Python

[인스타그램 클론] 프로필 페이지

model from django.db import models from django.conf import settings from django.shortcuts import resolve_url from django.utils.text import slugify#라이브러리 class Profile(models.Model): user = models.OneToOneField(settings.AUTH_USER_MODEL, on_delete=models.CASCADE) nickname = models.CharField(max_length=20) profile_photo = models.ImageField(upload_to="profile/" , blank=True) slug = models.SlugField(..

Backend/Python

form 이미지 업로드

텍스트 업로드 views.py def create(request): new = Diary() new.title = request.GET['title'] new.body = request.GET['body'] new.pub_time = timezone.datetime.now() new.save() return redirect(new) 클래스 인스턴스 생성 request.GET["html name"]으로 value 가져옴 save메소드로 저장 get_absolute_url을 이용해 디테일 페이지로 이동 이미지 업로드 models.py class Diary(models.Model): title = models.CharField(max_length=20) image = models.ImageField(uploa..

비비빅B
'Backend/Python' 카테고리의 글 목록