목록전체 글 (420)
초보 개발자
기본 골격 LogitnForm을 email과 password로 구성해주었다. password는 charField이기 때문에 타이핑하는 문자가 그대로 노출이 된다. 따라서 widget을 사용하여 그 부분을 가려주었다. LoginView를 CBV로 만들어 주었다. get과 post일 때를 구별해주었다. form을 만들고 POST로 요청을 보낸다. 전에 GET으로 보낼 때는 {% csrf_token %}이라는 것을 사용하지 않았는데, 이번 POST요청 시에는 이걸 사용하지 않으면 요청이 불가능하도록 사전에 django가 막아준다. 아래가 csrf token이다. 간단히 설명해보자면 유저가 로그인을 하면 서버가 로그인을 했다는 정보를 유저의 브라우저에 넘겨주고 이걸 쿠키라는 곳에 담는다. 서버와 브라우저는 st..
문득 event를 보다가 다양한 event가 있네? 음.. 복사 했을 때 출처 넣는 것도 해볼 수 있지 않을까?라는 생각에 찾아봤다. 일단 복사한 값을 가져오기 위해서 e.target으로 값을 가져와봤는데 여러줄을 복사한 경우에는 맨 윗줄에 있는 값만 복사되어 왔다. 그리고 그 값을 가져온들 값 자체를 바꿔주어야 하기에 이 방법은 무리다. 구글링을 하다가 방법을 발견했는데, 먼저 e.preventDefault()를 해줘야한다. 만약 안해주면 복사된 값에 우리가 원하는 text가 안 붙는다. clipboardData.setData를 통해서 복사된 값을 바꿀 수 있다. getSelection에 우리가 복사한 값이 담겨져있고 그 뒤에 우리가 원하는 값을 붙이면 잘 따라 오는 것을 확인할 수가 있다. 만약 UR..
INSTALLED_APPS에 user앱이 2번 추가되어있는지 확인
settings.py의 INSTALLED_APP 에 "django.contrib.admin", 이게 잘 추가되어있는지 확인
a라는 폴더를 만들고 pipenv shell을 하면 폴더에 새로운 가상환경이 생긴다. 그 하위폴더에도 같은 가상환경을 사용할 수 있다. 따라서 a 하위 폴더 b c에서도 a에서 만든 가상환경을 사용할 수 있는 것이다. a옆에 f라는 폴더를 만들자. 여기서는 a에 만든 가상환경을 사용할 수 없다. 여기선 별도의 가상환경을 사용해야한다. vscode에서 인터프리터를 설정한다면 그 가상환경에서 코드가 실행이된다. 만약 그 필요한 패키지가 가상환경에 깔리지 않았다면 실행이 안된다. 만약 터미널로 가상환경에 진입했다면 그 때에는 인터프리터는 아무 기능을 하지 않는다. 터미널에서 킨 가상환경의 파이썬이 실행되기 때문이다. conda는 좀 더 유연하다. pipenv와 달리 가상환경자체에 패키지를 설치하고 어디에서든 ..
django에서 S3와 RDS를 연동하는 방법을 해보려고 한다. 폴더를 아무거나 하나 만든다. pipenv --three pipenv shell pipenv install django django-admin startproject config .
우리가 방금 했던 작업들을 Forms API를 사용하면 쉽게 가능하다. 우리가 일일이 input에 값을 다 돌려주는 것도 django가 대신 해준다고한다. 그러기 위해선 form을 사용해야하고 room폴더 안에 forms라는 새로운 파일을 하나 만들어주자. form도 models에 있는 것처럼 fields라는 걸 가지고 있다. 단 models.Charfield 이런식이 아니라 forms.Charfield이다. from django import forms를 해온 뒤 아래와 같이 작성 후 form을 생성 후 context로 넘겨주면 아래와 같이 브라우저에 나온다. input 이런거 하나도 안줬는데 말이다. 심지어 lable도 넣어주었다 price필드와 room_type 필드를 추가해주었다. 그리고 city에..
이번에 하게 된 과제는 넷플릭스 클론코딩입니다. 저희 팀원은 저를 포함해 5명입니다. 저는 여기서 User 모델을 담당하여 이와 관련된 기능을 맡았습니다. 이 글에서는 제가 담당하고 구현한 기능에 초점을 맞추어 설명하겠습니다. 레트로플릭스 팀 과제를 시작하기 전 처음에 어떤 식으로 과제를 할지 고민하던 중 90년대부터 2000년대 까지의 작품들로 구성된 넷플릭스, 이름하여 레트로플릭스를 만들기로 하였습니다. User모델 장고에서 기본으로 제공하는 AbstractUser를 상속하여 만들었습니다. 찜한 영화를 담기 위한 favorite_movies, 생일을 담는 birthday, 성별을 담는 gender, 닉네임을 담는 nickname, 프사를 담는 profile_img, 깃허브, 카카오로 혹인 회원가입을 ..