본문 바로가기

분류 전체보기

(79)
내일배움캠프 8주차 돌아보기 그냥 온 시간이 장고다.나는 WIL을 쓰고 싶지만, 장고가 허락하지 않는다.잘 정리하고 잘 복습해서 다음주 프로젝트 차근차근 할 수 있길...
[내일배움캠프 8-5일] 회원가입, 회원탈퇴, 정보&비밀번호 수정 회원가입    path('signup/', views.signup, name='signup')from django.contrib.auth.forms import UserCreationForm@require_http_methods(['GET', 'POST'])def signup(request):    if request.method == 'POST':        form = UserCreationForm(request.POST)        if form.is_valid():            form.save()            return redirect('index')    else:        form = UserCreationForm()    context = {'form': form} ..
[내일배움캠프 8-4일] 로그인&로그아웃 구현하기, 404 처리, 데코레이터 Django Authentication System만약 유저가 id와 pw를 입력한다면 서버는 어떤 과정을 거쳐야 할까?1. 입력한 ID가 우리 DB에 있는지 확인2. 입력한 pw가 일치하는지 확인3. 그 유저가 몇번인지 판독4. Session Table로 가서5. 난수를 생성6. Session Table에 난수:유저 형태로 저장7. 생성한 난수를 쿠키에 담아 유저에게 전송 django에서 이 모든 과정은 login() 이라는 함수 하나를 통해 내부적으로 처리된다.즉 내부적으로 session을 사용해서 user정보를 제작해준다는 것.로그인 구현하기우선 accounts 앱을 만들고, 이를 my_first_pjt와 연결해야 함.(할 수 있다. 천천히 해보면 됨)accounts 파일 만들기 -> setting..
[내일배움캠프 8-3일] Django MTV(RUD), Django Form, URL Namespace Redirect어떠한 작업이 끝나고 내가 지정한 url로 돌려보내는 것.from django.shortcuts import render, redirectfrom .models import Articleredirect는 django.shortcut 안에 있음.def create(request):    title = request.POST.get('title')    content = request.POST.get('content')    # 새로운 Article 저장    Article.objects.create(title=title, content=content)    return redirect('articles')create 뷰에서 return 부분을 수정해주면 된다.create.html에서 요청을 ..
[내일배움캠프 8-2일] Django Model, ORM, MTV, GET&POST Modelfrom django.db import models# Create your models here.class Article(models.Model):    title = models.CharField(max_lengh=50)    content = models.TextField()장고의 모델은 클래스로 정의. Article 테이블을 생성했다고 생각하면 된다. 내가 사용할 컬럼들은 Field로 정의해주면 된다.ex) title은 CharField로 설정, 이 특징은 문자열 필드이면서 길이제한이 반드시 필요함.필요한 필드는 장고 문서에서 참조하며 사용하면 될듯.MigrationDB는 우리가 파이썬 코드로 모델을 작성한 사실을 알지 못함.우리는 DB에 변경할 내용을 Migration 단위로 반영해 주어..
[내일배움캠프 8-1일] HTML form, Variable Routing, Multiple Apps, Naming URL Patterns HTTP form{% extends 'base.html' %}{% block content %}    h1>Data Throwh1>    form action="" method="GET">        label for="message">데이터 입력 label>        input type="text" id="message" name="message">        button type="submit">전송button>    form>{% endblock content %}lable의 for는 input의 id와 동일해야 함.input 에서 핵심 속성은 namename 이 있어야 데이터를 전달할 수 있다.name 으로 서버에 데이터를 전달하고, 서버는 name 을 보고 데이터를 판단하는 것. meth..
내일배움캠프 7주차 돌아보기 CS를 거쳐 SQL 주차까지 끝이 났다. 정말 오랜만에 하는 SQL의 맛은 역시나 별로였다. 엑셀도 그렇고 데이터를 다루는데 있어서는 아주 재능이 없는 것 같다. 기계처럼 익숙해질 때까지 해야 하는데 뭔가 투자하는 시간이 적은 느낌이다. 재미있어야 투자하지... 그래도 강의를 다 듣고 난 지금은 어느정도 기억이 되돌아 온 상태이다.이번주는 모의 기술면접이 있었다. 많은 시간을 들여 준비하지는 못했지만 멘토님이 특강해주신 부분은 전체적으로 다 이해하고 말할 수 있을 정도로 공부했다. 이런 과정 덕분에 모호하던 개념을 확실히 하고 단어의 정확한 정의를 공부할 수 있어 도움이 되었다고 느꼈다.쉬어가는 날도 있었다. 밍글데이라고 다같이 게임하고 라디오듣고 노는 날이었는데 기대했던 것보다 재미있었다. 컨텐츠도 여..
[내일배움캠프 7-5일] context, 템플릿 필터, 템플릿 태그, 템플릿 상속, 커스텀 템플릿 context, 템플릿 변수 사용우선 원래 하던 방식으로 context를 사용하지 않고 만들어 봄.urls에서 hello 경로를 추가.views에서 함수형 view인 hello를 정의.hello.html 생성. 이번에는 views에서 context를 사용하고, html에서 변수를 가져와 사용하는 방식으로 해봄.context는 딕셔너리 형태로 구성.여기서 name이라는 키 값이 변수로 사용되는 것.html에서 템플릿 변수로써 name을 사용한다.형식은 {{ 변수이름 }}템플릿 필터 & 태그 사용views에서 특정 값이나 리스트를 변수에 저장하고, context에 딕셔너리 형태로 각각 name, tags, books를 저장.여기서 tags라는 리스트의 첫번째 인덱스 값인 python을 가져오기 위해 {{ t..