<Instagram 클론 코딩> 03. 프로젝트 Settings.py 설정하기 01. Django SECRET_KEY 분리하기 Django는 시작할때부터 SECRET_KEY가 settings.py 파일에 무작위로 만들어서 입력해준다. 하지만 이 프로젝트를 웹사이트에 등록하게 된다면 이 SECRET_KEY를 다른 사람들이 못 보게 해야 웹사이트의 정보들이 빼돌려지지 않고 정상적으로 돌아갈 수 있을 것이다. 따라서 SECRET_KEY를 분리를 시켜줘야 한다. 이를 하기 위해서는 우선 가상환경에서 pip install python-decouple을 해준다: >>> pip install python-decouple이후, 프로젝트의 base directory에 .env 파일을 만들어준다. django_instagram ├── / instagram │ └─ / base │ └─ .env │ .. 토이 프로젝트들/Instagram 클론 코딩 4년 전
<Instagram 클론 코딩> 02. 가상환경과 Django 설치 가상환경 만들기 파이썬의 가상환경을 설치해준다. 내가 작업하는 환경은 Windows 이고, 파이썬은 3.9.0 버전이다. >>> pip install virtualenv django_instagram이라는 프로젝트 폴더를 만들어주고, 그 안에 venv라는 이름의 가상환경을 만들어준다. >>> mkdir django_instagram >>> virtualenv venv 다음으로는 설치된 가상환경을 작동시켜준다. >>> venv\Scripts\activate (venv) C:\Users\username\desktop\django_instagram 앞의 venv 표시를 통해 가상환경에서 작동중임을 알 수 있다. 2. Django 설치와 프로젝트 생성하기 가상환경 안에 그대로 있는 상태에서, 가장 최신의 Dja.. 토이 프로젝트들/Instagram 클론 코딩 4년 전
<Instagram 클론 코딩> 01. 프로젝트 소개 1. 목적 이 토이 프로젝트는 강의 목적으로 올리는 포스팅이 아닌 나의 개인적인 개발기록을 올리기 위한 포스팅이다. Instagram 클론 코딩을 하며 Djangoㄹ르 공부한 내용과 함께 나의 개발 기록을 같이 올릴 수 있도록 하겠다. Django에 대해서 많이 알지 못하는 상태에서 개발을 배우면서 쓰는 글이기 때문에 Django Convention에 알맞지 않은 부분이나, 잘못된 코드는 따로 지적해준다면 공부해서 알맞게 고칠 수 있도록 하겠다. 다음은 내가 이 클론코딩을 하면서 사용하게 될 개발스택들이다: Frontend: Bootstrap4.5, Javascript, jQuery Backend: Django(Python) Database: Django 내장 Databse(db.sqlite3) Vers.. 토이 프로젝트들/Instagram 클론 코딩 4년 전
<Django 공부하기> 로그인 이후 특정 페이지로 Redirect하기 우리가 흔히 다른 웹사이트를 사용할 때 이런 경험이 있을 것이다: 특정 페이지(A)에 들어가려고 한다 로그인이 되어 있지 않으므로 웹사이트에서 바로 로그인 페이지로 redirect한다. 로그인을 한다 로그인 후 원래 가려던 페이지(A)로 바로 redirect 된다. 하지만 우리가 Django를 쓰면서 이를 따로 구현해주지 않으면 로그인 페이지로 redirect 되었을 때, 그리고 그 후 로그인을 한다면 바로 로그인 후 redirect하게 되어있는 페이지로 옮겨진다. 즉, A 페이지로는 redirect가 안된다. 이번에는 이 방식을 한번 구현해보겠다. html template 수정하기 {% extends 'base.html' %} {% block content %} {% csrf_token .. Django 공부하기 4년 전
<Django 공부하기> 웹사이트 slug 추가하기 이번에는 웹사이트의 slug를 Django에서 적용시키는 방법에 대해서 알아보도록 하겠다. Slug란 무엇인가? Slug란, 흔히들 우리의 웹사이트 주소창에 보면 나오는 것이다. 다음의 사진을 한번 보자: 여기에 보면 .../manage/newpost/... 라고 명시되어 있는 것을 볼 수 있다. 이렇게 웹사이트 주소 뒤에 따라 오는 부분을 slug라고 이해하면 편하다. models.py 수정하기 이 특정한 포스팅의 목적을 위해 다음과 같은 모델 클래스를 만든다: # models.py from django.db import models class Article(models.Model): title = models.CharField(max_length=100) slug = models.SlugField().. Django 공부하기 4년 전
<Django 따라하기: Just Django> Django Custom Commands 적용하기 이번에는 Youtube JustDjango의 Creating a Django Boilerplate 시리즈를 해보도록 하겠다. www.youtube.com/watch?v=qrsq8g6bqbE&list=PLLRM7ROnmA9FgFlqn-HHBz0LJ62qJBwSw&index=4 지금 어떤 종류의 Custom Commands가 필요한가? 우리는 현재 Django Boilerplate를 만들고 있다. 이 Boilerplate의 역할은 미리 준비된 Django Project를 만들어서 필요할 때마다 적용시키거나, 새로운 Django Project를 만들 때 기반이 되게끔 하여 시간을 단축시키기 위함이다. 더 자세한 사항은 여기에서 알아볼 수 있다. 우선 우리의 폴더들을 보자: # project folder str.. 코딩 따라하기(Django, Javascript, etc...)/Django 연습 + 따라하기 4년 전