Back-end/Django 9

HUFS Live

교내 여름방학 HUFStudy에 참여해 진행한 BoomBaBoo 팀 프로젝트로, 기존의 학교 커뮤니티인 HUFS Life를 리디자인하고 CRUD를 포함한 게시판 기능을 완성해보는 프로젝트. Django 백엔드 개발자로 참여했다. 주요 기능 및 구현 수단은 다음과 같다 Django 프레임워크의 MTV 패턴을 활용해 게시판별 CRUD 구현 Django가 제공하는 User 기능을 활용한 로그인/회원가입/권한설정 템플릿 태그를 적절하게 활용해 레이아웃 구성 서비스 규모에 맞게 PostgreSQL을 연동한 DB 관리 Heroku를 통한 서비스 배포 에디터: Visual Studio Code / 브라우저: Chrome 코드 보기🔽 GitHub - Team-BoomBaBoo/HUFS_LIVE: 외대인을 위한 커뮤니티..

Back-end/Django 2021.08.27

[HUFS/HUFStudy] #8 PostgreSQL 연동, Heroku 배포

PostgreSQL DB 연동 Django는 기본 DB로 sqlite를 사용하는데 규모가 있는 서비스에는 적합하지 않다 무료이며 UI가 직관적인 PostgreSQL을 사용해보자 사양에 맞게 PostgreSQL을 다운받자 Download PostgreSQL Database for Windows, Linux and MacOS & 32-bit or 64-bit Versions | EDB Download PostgreSQL packages or installers free from EDB. Get PostgreSQL for Windows, Linux and MacOS platforms. Download 32-bit or 64-bit versions. Download open-source PostgreSQL no..

Back-end/Django 2021.08.06

[HUFS/HUFStudy] #7 소셜로그인, API

Social Login Django의 allauth라는 pip 패키지로 보편적인 소셜 로그인 기능을 구현해볼 것이다 settings.py에 ‘django.contrib.sites’와 allauth관련 3가지 코드를 넣어주자 INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.sites', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'community.apps.CommunityConfig', # allauth 'allauth', 'allauth.acco..

Back-end/Django 2021.08.02

[HUFS/HUFStudy] #6 Form

Faker 가짜 데이터들을 생성해주는 pip패키지인 Faker를 알아보자 이런식으로 Faker를 import해 가짜 데이터를 생성할 수 있다 (출력을 위해 print문에 넣었다) from faker import Faker myfake = Faker() # Faker의 매소드를 통해 어떤 종류의 가짜데이터를 뽑아낼지 결정 가능 print(myfake.name()) print(myfake.address()) print(myfake.text()) print(myfake.state()) print(myfake.sentence()) print(myfake.random_number()) ‘ko_KR’을 넣으면 한글이 되지만 name과 address만 생성할 수 있다 myfake = Faker('ko_KR') 파일에..

Back-end/Django 2021.07.30

[HUFS/HUFStudy] #5 로그인/회원가입, Pagination

로그인, 회원가입 이론 로그인 및 회원가입은 Django에서 제공하는 함수를 import해 사용할 수 있다 로그인, 회원가입 실습 html파일들을 views.py, urls.py에 연동하고 대충 형태를 잡아준다 (url은 앱 내부에 urls.py를 만들어 따로 관리) signup.html {% extends 'base.html' %} {% block contents %} Sign up! Username: Password: Confirm Password: {% endblock %} login.html {% extends 'base.html' %} {% block contents %} Login Username: Password: {% endblock %} 먼저, signup.html의 form action..

Back-end/Django 2021.07.28

[HUFS/HUFStudy] #4 Path Converter, 글쓰기, Static/Media, 템플릿 상속, URL

PK, Path Converter, 예외처리 models.py의 Blog 클래스 안에 본문 미리보기가 100글자 까지만 보이도록 하는 함수를 작성 class Blog(models.Model): title = models.CharField(max_length=200) pub_date = models.DateTimeField('date published') body = models.TextField() def __str__(self): return self.title # 글 제목이 타이틀로 보이도록 def summary(self): return self.body[:100] # 본문 미리보기가 100글자 까지만 보이도록 home.html 파일에 함수를 넣어주면,, {% for blog in blogs.all%..

Back-end/Django 2021.07.18

[HUFS/HUFStudy] #3 Model/Admin, Queryset/Method

Model & Admin 이론 Model에 어떻게 데이터를 담으며, 어떻게 View로 넘기고 화면에 띄우는지 알아보자! 데이터베이스는 장고와 별개로 존재하며 여러 개가 있을 수도 있다! * 기본으로 SQLite, 추가로 PostgreSQL, MySQL 등.. / settings.py에서 등록 따라서 models.py와 데이터베이스를 연동하는 작업이 필요한데, 이때 입력하는 명령어는,, Model & Admin 실습 이제 저장될 데이터 형식을 blog 앱에 있는 models.py에 작성해주자 from django.db import models class Blog(models.Model): title = models.CharField(max_length=200) pub_date = models.DateTim..

Back-end/Django 2021.07.14

[HUFS/HUFStudy] #2 Word Counter 만들기

Word Count 이론 html로 여러 템플릿을 만들고 파이썬 코드를 삽입해 Word Counter를 만들어보자 html문서 안에 파이썬 코드를 넣으려면 장고의 템플릿 언어를 써야한다! Word Count 실습 이제 탬플릿 태그를 활용해 두 html파일을 a링크로 연결해주자 result.html 파일에 함수를 설정해 home에서 입력 받는 데이터를 처리하자 이제 템플릿 변수를 활용하면 html에 파이썬 변수를 출력할 수 있다! 총 단어 수를 산출해보자 이제 어떤 단어가 몇 번 나왔는지 단어 카운트 기능을 만들어보자 본 내용은 멋쟁이사자처럼의 '9기 운영진 교육'을 바탕으로 작성되었습니다.

Back-end/Django 2021.07.03

[HUFS/HUFStudy] #1 기본 환경 세팅

기본 환경 세팅 장고(Django)는 파이썬으로 작성된 패키지 관리 시스템인 pip패키지 중 하나이다 가상환경을 설정하고 장고를 설치해보자! 가상환경을 킨 상태에서 장고를 설치해보자! Hello World 실습 이 상태에서 장고 프로젝트를 생성해보자 manage.py를 활용해 앱을 만들어보자 이제 myproject 폴더의 settings.py 파일에 myapp을 연결해야 한다 다음으로 home.html파일을 언제 어떻게 처리할지 함수를 지정해주자 myapp 폴더 안의 views.py에 들어가서,, 이제 어떤 url을 입력했을 때 html파일을 띄울 것인지 url을 설계하자 myproject 폴더의 urls.py 파일에 들어가서,, 저장하고 서버를 다시 실행하면,, MTV패턴 Django는 이처럼 정보들의..

Back-end/Django 2021.06.29