이것저것 공부방
[pinterest clone (16)] DetailView를 이용한 개인페이지 구현
createview는 뭔가를 만들어야하니까 form_class랑 (success_url) 성공했을때 redirect할 구간을 정해줬는데 detailview니까 어떤 모델을 쓸지 모델안에 있는 정보를 어떻게 시각화해줄지 그것만 신경써주면된다. 1 views.py class AccountDetailView(DetailView): model = User template_name = 'accountapp/detail.html' 2 detail.html 생성 {% extends 'base.html' %} {% block content %} {{ user.date_joined }} {{ user.username}} {% endblock %} 3 urls.py path 추가 from django.contrib.aut..
[pinterest clone (15)] form 디자인
1 django-bootstrap4 라이브러리 설치하기 django-bootstrap4.readthedocs.io/en/latest/installation.html Installation — django-bootstrap4 2.0.2 documentation © Copyright 2020, Dylan Verheul Revision 8c7d5e3c. django-bootstrap4.readthedocs.io 2 settings.py INSTALLED_APPS에 bootstrap4 추가 3 login.html {% extends 'base.html' %} {% load bootstrap4 %} {% block content %} Login {% csrf_token %} {% bootstrap_form for..
[pinterest clone (14)] Login / Logout 구현
장고에 Login view, Logout view 제공된다. 1 urls.py from django.contrib.auth.views import LoginView, LogoutView from django.urls import path from accountapp.views import hello_world, AccountCreateView app_name = 'accountapp' urlpatterns = [ path('hello_world/', hello_world, name='hello_world'), path('login/', LoginView.as_view(template_name='accountapp/login.html'), name='login'), path('logout/', Logout..
[pinterest clone (13)] CreateView를 통한 회원가입 구현
duckracoon.tistory.com/44?category=1017083 Django가 CRUD로 유명한 이유 CRUD는 Create, Read, Update, Delete가 가능한 시스템을 이야기한다. 그리고 Django는 CRUD를 만드는데 있어 생산성이 탁월한 것으로 유명하다. 왜일까? Django는 CRUD에 View를 따로 제공한다. Create view, Rea.. duckracoon.tistory.com Class Based View에 대해 이해하자. views.py class AccountCreateView(CreateView): model = User form_class = UserCreationForm success_url = reverse_lazy('accountapp:hello_..
Django가 CRUD로 유명한 이유
CRUD는 Create, Read, Update, Delete가 가능한 시스템을 이야기한다. 그리고 Django는 CRUD를 만드는데 있어 생산성이 탁월한 것으로 유명하다. 왜일까? Django는 CRUD에 View를 따로 제공한다. Create view, Read view, Update view, Delete view. 즉 이 4가지의 작업들을 쉽게 할 수 있는 클래스를 제공해준다. 각 작업에 최적화된 도구를 쥐어준다는 이야기다. 이것을 Class Based View라고 한다. 여기에 반대되는 말도 있다. Function Based View인데 함수 기반의 뷰를 이야기한다.
pycharm에서 서버 디버깅하는법 (디버깅 설정)
서버 내용이 더 복잡해지기전에 파이참에서 서버를 디버깅하는 법을 알아보려한다. Run > Edit Configuration > Templates > Python > script path 지정 (가상환경 설정했다면 가상환경의 Scripts위치) > Parameters에 runserver 입력 > ok duckracoon.tistory.com/3 [Django Tutorial] Blog 만들기 (2) 모델 코딩 (models.py) Django에서는 모델이라는 파이썬 객체를 통해 데이터에 접속하고 관리한다. 모델: 저장된 데이터의 Schema를 정의한다. 모델은 models.py에서 정의되며 이들은 django.db.models.Model 을. duckracoon.tistory.com 여기서도 비슷하게 설정..
[pinterest clone (12)] DB 정보 접근
duckracoon.tistory.com/41 [pinterest clone (11)] POST 통신을 이용한 DB 데이터 저장 1. Send POST data 2. Receive POST data 3. Save DB 1 hello_world.html {% extends 'base.html' %} {% block content %} Hello World List {% csrf_token %} {{ text }} {% endblock %} hello_world_input 받아.. duckracoon.tistory.com 앞서 만들면서 생기는 객체들이 db에 계속 쌓일텐데 그걸 모두 긁어와서 display하는 과정을 알아보자. views.py from django.shortcuts import render ..
[pinterest clone (11)] POST 통신을 이용한 DB 데이터 저장
1. Send POST data 2. Receive POST data 3. Save DB 1 hello_world.html {% extends 'base.html' %} {% block content %} Hello World List {% csrf_token %} {{ text }} {% endblock %} hello_world_input 받아서 text에 넣고 출력하기 views.py from django.http import HttpResponse from django.shortcuts import render def hello_world(request): if request.method == "POST": temp = request.POST.get('hello_world_input') retur..
[pinterest clone (10)] HTTP 프로토콜 GET, POST
protocol: 일종의 통신규약이다. 우선 알아둘 메서드: GET, POST User와 Server가 request하고 response 할텐데 서버가 뭘 원하는지 그런 추가적인 정보가 필요하다. 그런걸 넣어주는 방식이 GET, POST이다. (대충 이런 느낌) GET Inquiry: 보통 조회를 하기 위해서 요청을 많이 보냄. POST: 뭐 새로 만들때, 수정할때 많이 사용. 잘 모르겠다. 우선 써보고 뭔지는 나중에 더 공부해서 업뎃하겠다. GET, POST 실습 브라우저에서 주소창에 넣으면 자동으로 알아서 보내지게 되는게 GET이고 POST는 따로 설정을 해야한다. POST 쓸려면 HTML안에다 form을 만들어주어야한다. {% extends 'base.html' %} {% block content ..
[pinterest clone (9)] Model, DB 연동
만들어놓은 hello_world.html 을 보면 정적이다. 그냥 워딩 딱 박혀있는게 끝이다. {% extends 'base.html' %} {% block content %} testing {% endblock %} 이걸 db에서 내용을 받아 동적으로 변할 수 있게 models.py로 부터 시작한다. 1 models.py from django.db import models # Create your models here. class HelloWorld(models.Model): text = models.CharField(max_length=255, null=False) 2 python manage.py makemigrations : 우리가 models.py에다 쓰는 내용을 db와 연동시킬 파이썬 파일로 ..
CSS에 대한 정리
지금까지 그냥 얼렁뚱땅 쓰다보니 쓸때마다 예시나 오픈소스를 찾아보게되는 것 같다. 시간적으로도 별로고 건설적이지도 못한 것 같으니 앞으로 주요한 것들에 대해 여기에 정리를 해나가려한다. A. 주요 속성 1. display 속성 - Block Block 속성은 Inline과 달리 한 줄에 나열되지 않고 그 자체로 한 줄을 완전히 차지한다. default가 block :div, p, ul, li, dl, dt, dd, h1~h6, form - Inline text 만큼만 영역을 가져간다. 줄을 바꾸지 않고 다른 요소와 함께 한 행에 위치하려는 성향 default가 inline :span, a, img, input, mark, strong, em, abbr - Inline-block block인데도 inlin..
[pinterest clone (8)] static 설정과 css분리
static file 이란? duckracoon.tistory.com/11 [Django Tutorial] Blog 만들기 (10) Vue-Django 연동원리 웹 프로그램에서 css나 img, js 파일들은 static file 혹은 assets file 이라고 한다. django 측면에서 static 파일은 지칭하는 url로 보통 /static/ 이라는 url을 사용한다. /static/이라는.. duckracoon.tistory.com 1 settings.py에 STATIC_ROOT 정의 STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles') python manage.py collectstatic 이라는 명령어가 있다. 모든 static 파일들을 한군데로 모아주..