일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- 엑셀
- UI한글변경
- 매크로
- 알고리즘 공부방법
- c++
- EOF
- string 함수
- double ended queue
- 프레임워크와 라이브러리의 차이
- Django란
- scanf
- 이분그래프
- 시간복잡도
- correlation coefficient
- 입/출력
- 2557
- 백준
- 자료구조
- iOS14
- string 메소드
- Django의 편의성
- 구조체와 클래스의 공통점 및 차이점
- 표준 입출력
- vscode
- Django Nodejs 차이점
- 입출력 패턴
- getline
- 장고란
- k-eta
- 연결요소
- Today
- Total
목록웹개발/Django 웹서비스 개발(인프런) (53)
Storage Gonie
http://byteofpython-korean.sourceforge.net/byte_of_python.html 바이트 오브 파이썬 (입문, 강추)https://wikidocs.net/book/2 왕초보 파이썬 (입문)https://wikidocs.net/book/1 점프투 파이썬 (입문) https://tutorial.djangogirls.org/ko/django/ 장고걸스 튜토리얼, 난이도: 입문https://docs.djangoproject.com/en/1.10/intro/tutorial01/ Writing your first django apphttps://www.djangoproject.com/ 장고 공식 사이트
실제 서비스에서는 웹서버 | 디비서버 는 반드시 별도의 물리서버로 분리시켜 운영되어야 하고, 디비의 2중화 백업도 거의 필수적이라고 한다. 장고에서 DB를 mysql로 변경하는 법https://github.com/honux77/inflearn-django/blob/master/lecture-note/deploy/mysql.md mysql 참고 강좌 - 유튜브 영상 링크('이것이 MySQL이다') 이와 관련된 장고 공식 도큐먼트https://docs.djangoproject.com/en/1.10/ref/databases/#mysql-db-api-drivers
쎔네일기능을 직접 구현할 수 있으나, 파일 I/O작업도 있고 복잡하여 아래의 오픈소스를 이용한다.여기서는 좀 더 간단한 sorl-thumbnail을 이용하도록 한다. 1) sorl-thumbnail(https://github.com/jazzband/sorl-thumbnail)2) django-imagekit(https://github.com/matthewwithanm/django-imagekit) 1. sorl-thumbnail 설치- 장고 1.10 버전에서는 그냥 설치하면 에러가 나므로 아래의 방법으로 설치한다.- 가상환경을 실행한 후 아래의 명령어 입력하여 깃허브에서 직접 가져와 설치한다.- "pip install -e git+https://github.com/mariocesar/sorl-thumbn..
1. forms.py에서 아래의 폼 클래스를 추가- 사용자 정보에 대한 폼과 프로필사진에 대한 폼을 각각 만들어 둔 뒤에 나중에 한번에 보여줄 예정- views.py의 ProfileUodateView클래스의 get함수의 return값을 보면 이해됨.from .models import Profile# 프로필사진을 업데이트할 때 사용자의 정보도 같이 업데이트 할 수 있도록 사용자정보에 대한 폼, 프로필에 대한 폼 생성 class UserForm(forms.ModelForm): class Meta: model = User fields = ['first_name','last_name'] class ProfileForm(forms.ModelForm): profile_photo = forms.ImageField(r..
프로필 만드는 방법에는 2가지 정도가 있다. 1) 기존의 장고 User모델을 확장시키는 방법- 뷰를 쓸때 편함(유저랑 관련된 디테일 뷰, 리스트 뷰를 쓰면 되기 때문에) 2) 사용자와 one to one 관계를 가지는 프로필 모델을 추가하는 방법(난이도 상으론 이게 더 쉬움)- User모델이랑 프로필 모델이랑 2개를 가져와야 하는 경우가 생긴다. 1. models.py에 Profile 클래스 추가.class Profile(models.Model): user = models.OneToOneField(settings.AUTH_USER_MODEL) # 현 계정의 사용자를 가져올 수 있음. nickname = models.CharField(max_length=64) profile_photo = models.Im..
0. OAuth2란? - 검색해보기 1-1. Github 홈페이지에서 "django allauth"를 검색하고, 최상단의 것을 클릭한다.- https://github.com/pennersr/django-allauth- https://github.com/omab/django-social-auth- auth는 보통 위의 두가지가 사용되는데 위의 것이 좀 더 최신의 것이다.1-2. 아래의 Documentation을 클릭한다. 1-3. Installation - Django 를 클릭하면 장고에서 auth를 사용할 수 있게 할 수 있고, 나와있는 순서대로 하면 된다.- https://django-allauth.readthedocs.io/en/latest/installation.html#django2-1. 가상환경..
1. kilogram/urls.py에서 IndexView클래스를 login_required로 감싸준다.- 로그인을 했을 때만 사진이 보여지도록 함.- 아래의 방법은 여러가지 방법중 하나일 뿐.from django.contrib.auth.decorators import login_required urlpatterns = [ url(r'^$', login_required(views.IndexView.as_view()), name='index'), url(r'^upload$', views.upload, name='upload'), ]2. mysite/urls.py에서도 1번과 같이 해준다.from django.contrib.auth.decorators import login_requiredurlpatterns..
1. froms.py에서 Photo 모델을 imprt해주고 UploadFrom을 추가해준다.from .models import Photo# 사진 업로드 폼 class UploadForm(forms.ModelForm): comment = forms.CharField(max_length=255) class Meta: model = Photo # 어떤 모델과 연결할지 exclude = ('thumnail_image', 'owner') # 입력받지 않을 필드를 표시가능, 이 부분은 코드로 처리해주기 위해2. views.py에서 UploadForm 를 import해주고 upload 메소드를 추가해줌from .forms import CreateUserForm, UploadFormdef upload(request):..
1. settings.py수정, 맨 아래에 두줄 추가.MEDIA_URL = '/files/' # 업로드하는 과정을 처리하는 url지정. MEDIA_ROOT = os.path.join(BASE_DIR, 'uploads') # 현재 프로젝트 경로에 uploads 폴더를 생성하여 이곳에 업로드한 파일을 저장하겠다는 것.2. models.py에서 Photo 모델 및 user_path를 만들어주는 메소드 생성.from django.db import models from django.conf import settings # Create your models here. def user_path(instance, filename): # instance는 Photo 클래스의 객체, filename은 업로드할 파일의 파일..
1. kilogram/form.py파일 생성from django.contrib.auth.models import User from django.contrib.auth.forms import UserCreationForm from django import forms class CreateUserForm(UserCreationForm): # id, pw만 입력받은 UserCreationForm을 확장시킬것이므로 상속받음 email = forms.EmailField(required=True) class Meta: model = User fields = ("username", "email", "password1", "password2") # 입력받을 필드순서 지정 def save(self, commit=True..