[ Django ] Django Model Field
·
Archive/Develop
장고 내에서 기본으로 지원되는 모델 필드를 알아보자. Primary Key : AutoField, BigAutoField 문자열 : CharField, TextField, SlugField 날짜/시간: DateField, TimeField, DateTimeField, DurationField 참/거짓 : BooleanField, NullBooleanField 숫자 : IntegerField, SmallIntegerField, PositiveIntegerField, PositiveSmallIntegerField, BigIntegerField, DecimalField, FloatField 파일 : BinaryField, FileField, ImageField, FilePathField 이메일 : EmailF..
[ Django ] Django DB 에 관하여
·
Archive/Develop
많이 해봤더라도, 아직 미숙하기에 한번 더 리마인드 해야할 것 같다. Django Model 장고 내장 ORM 데이터베이스 테이블과 파이썬 클래스를 1:1로 매핑. 모델 클래스 명은 단수형으로 지정한다. 클래스기때문에 첫글자가 대문자인 PascalCase 네이밍 규칙을 따라야한다. 매핑되는 모델 클래스는 DB 테이블 필드 내역이 일치해야한다. 모델을 만들기 전에 서비스에 맞는 DB 설계과정이 들어가야한다. 모델을 개발할때는 아래의 순서를 따르면 된다. 1. 모델 클래스 작성 2. 마이그레이션 파일 생성. 3. 마이그레이트 4. 모델활용 만약 이미 DB 가 구축되어 있다면, inspectdb 명령어를 이용하여 데이터베이스로부터 모델 클래스 소스를 생성할 수도 있다. DB 테이블명은 "앱이름_모델명" 으로 ..
[ Django ] SNS 서비스에 태그 기능을 추가해보자! | django taggit 설치/사용법 (2)
·
Archive/Develop
이전 포스팅에 이어서, 데이터베이스에 저장된 내용을 화면에 적용시켜 보도록 하겠다! 지금 내 화면은 아래와 같다. 이제 글을 작성할 때 태그를 작성할 수 있도록 html 파일과 view 파일을 변경시켜보자. 우선 tweet앱의 views.py 로 들어가보자. 글을 쓸 때 태그 기능이 들어가야하기때문에, 글이 save 되는 부분만 가지고 왔다. POST 메소드에서 글이 저장된다. 따라서 elif문은 크게 신경쓰지 않아도 된다. 여기에 tags 변수를 하나 더 추가해주자. id 랑 name이 tag 인 input 태그는 나중에 html 수정하면서 추가할 것이다. 이제 실제로 save 할 단계에서 for문을 통해 tag 하나하나의 공백을 없애준다. for 안에서 tag.strip() 은 공백을 없애주는 용도이..
[ Django ] SNS 서비스에 태그 기능을 추가해보자! | django taggit 설치/사용법 (1)
·
Archive/Develop
SNS에 존재하는 태그 기능은 같은 관심사를 공유하고, 모아보는 효과가 있다. 우리가 태그 기능을 따로 만들 수도 있지만, 장고에는 이미 관련 모듈이 존재한다. 다운받고 내가 만들고 있는 서비스에 바로 적용해보자! 우선 이번 포스팅에서는 장고 태그 모듈을 다운로드 받고, settings 에 추가해주고 migration 해주는 것만 다뤄보겠다. 실제 만들고 있는 서비스에서 이를 활용하는 방법은 다음 포스팅에서 확인하면 될 것 같다. 장고 태그모듈 다운 받기 두개를 다운 받아야한다. pip install django-taggit 일단 위 명령어로 django-taggit 을 설치해주자. pip install django-taggit-templatetags2 이것도 설치해준다! settings에 추가해주기 모..