0.들어가면서 회원가입 로직을 구성하려면 어떻게 해야할까?? 비밀번호가 일치하는가? 안하면 돌아가자. 그리고 나머지 valid를 점검하자.(패턴은 단순한가? username이 중복되지 않는가?) valid하지 않으면 돌아가자. 둘다 맞으면 저장을 하면된다. User.objects.create_user(username, email=None, password=None) create_user 메서드를 사용하여 암호화 되어 저장을 시킨다. User.set_password(password) 를 홍해 비번을 암호화 하면서 변경한다. 1. 사용자는 로그인 한 사람인가? 우리는 어떠한 page로 가더라도 login 한 것을 알고 있게 구현을 해야한다. 그럴 려면 우선은 웹은 통신을 HTTP로 한다는 점을 알아야 한다...
from django.shortcuts import render, redirect, get_object_or_404 from django.views.decorators.http import require_POST from django.http import HttpResponseForbidden, HttpResponse from django.contrib import messages from django.contrib.auth.decorators import login_required from .models import Article from .forms import ArticleForm, CommentForm # Create your views here. def index(request): article..
0. 들어가면서 간단히 프로젝트를 시작하는 전반적인 순서를 적어보겠다. 여기서 글을 보면서 모르는 부분은 django 카테고리에서 검색 부분에서 찾아가면서 하나씩 하나씩 프로젝트를 생성해 보자. 아래의 순서들을 보면 처음에는 기초부분으로 시작하지만, 다음 으로 넘어갈 수록 기능이 추가 되기 때문에 하나씩 하나씩 완성해본다는 생각으로 해보면 좋다. 장고 CRUD 기본 순서 project와 app을 만들고 설정까지 한다. app 만들 때 INSTALLED_APPS가서 꼭 적자. templates 안에 base.html 만든다.(templates는 프로젝트폴더의 바로 하위 폴더) {% block body %} {% endblock %} url 분리한다. iclude 적어주는 것을 잊지 말자. urls 안에 p..
예를 들어서 상황을 한번 가정해보자. views에서 create이 후에 게시물 목록을 보여주기 위해서 render나 redirect를 할 건데, DB에 저장 후에 게시판이 뜨게 하고 싶다. views.py from django.shortcuts import render, redirect 기본적으로 위와 같이 import를 한다. render(request, 'article/index.html')을 하면, 바로 index.html로 넘어가기 때문에 DB가 없다. 따라서 index.html 로 넘어가도 게시물들이 안 뜬다. 하나의 함수는 하나의 기능만 가능하기 때문에 create함수에서는 DB를 저장 하기만 할 뿐, DB를 불러오기가 안된다. 즉, def index를 거쳐야 한다. redirect를 쓰면 u..
AJAX(Asynchronous Javascripy And Xml) [에이젝스] [아약스] JS로 비동기 요청을 보내기 비동기 요청은 새로 고침없이 화면을 바꿔준다. javascript의 최종관문을 이해하기 위해 잠시 브라우저에 관련된 이야기를 해 볼까 한다.(DOM) 예시를 보자. 개발자도구 열고 Console클릭 후에 아래의 톱니바퀴를 누른 후에 Log XMLHttpRequesys 를 클릭해서 체크하자. 그러면 비동기 요청이 모두 찍힌다. 그러면 이제 검색창에 글을 적어보면 글자 하나하나당 비동기 요청이 실행되는 것을 알 수 있다. 즉, 새로고침 없이 글자가 하나하나 찍힐 때 마다 DB를 확인하여 자동완성을 완성한다. 데이터 받아보기 https://koreanjson.com/ Korean JSON {..
resolver_match views의 create 함수와 update 함수가 form.html로 둘다 넘어갈때 분기하기 {% if request.resolver_match.url_name == 'create' %} 새 글쓰기 {% else %} 수정하기 {% endif %} resolver_match는 url의 이름을 path로 풀리게 한다. 로그인 하지않고 댓글 작성 시 오류 @require_POST와 @login_required 중 하나를 빼주면 된다. @login_required를 빼고 아래의 if와 else를 추가한다. if request.user.is_authenticated: ~~ else: message.warning(request, '댓글 작성 시 로그인이 필요') return redir..
보통 CRUD에서 migrate 이후에 READ인 목록페이지를 만든 후에, (create를 만들지 않아서 게시글 생성이 안되는경우) 잘 작동하는지를 보기 위해서 더미 게시물을 만들고 싶을 때 사용한다. models.py 설정 하면서 admin 추가하는 습관을 들이자. 그래야 관리하기가 편하다. admin.py form .models import Article admin.site.register(Article) python manage.py createsupersuer 로 관리자 아이디 만든다. 그리고 python manage.py runserver 해서 admin url로 들어가면 된다. 위의 내용을 object로 표시가 된다. 만약 어떠한 모델의 내용을 관리자로 관리를 하고 싶다면 아래와 같이 하자. ..
article = Article.objects.get(pk=pk) 에서 get의 의미는 단 하나만 가능하다는 뜻이다. 값이 없는 경우 ERROR => 100이라는 pk값이 들어왔을 때, DB에 100이 없으면 ERROR가 뜬다. 값이 여러개인 경우 ERROR 즉, DB에 있는 단 하나의 값이 들어와야 에러가 안뜬다. 위방식의 문제점과 사용이유 100이라는 pk 값이 들어오는 경우에 500오류라고 개발자 오류라고 ERROR가 발생한다. 하지만 사용자가 없어서 100번째 글이 아직 안 적혀서 뜨는거지 나의 잘못이라고 할 수 없다. 즉, url이 없어서 그런거다. 개발자 잘못이 아니라는 점을 표현하고 싶어서 get_object_or_404를 쓴다. 쓰는법 + DJango shortcut functions 공식..
- Total
- Today
- Yesterday
- next.config.js
- nextjs autoFocus
- logout
- 자료구조
- 클라우데라
- UserCreationForm
- Queue
- 자연어처리
- JavaScript
- pandas
- react autoFocus
- login
- typescript
- DFS
- Express
- error:0308010C:digital envelope routines::unsupported
- read_csv
- useState
- django
- BFS
- nodejs
- mongoDB
- Deque
- Vue
- useHistory 안됨
- Python
- NextJS
- vuejs
- TensorFlow
- react
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 | 31 |