본문 바로가기

lang49

Django 앱 작성하기 part5 [test] Test 장고는 버그 테스트를 자동으로 해준다. 테스트를 통해 디버깅 시간을 절약할 수 있다. 앞으로의 문제를 예방한다. 신뢰도가 증가한다. 협업 시 일을 돕는 효율적인 툴이 된다. 버그 케이스 만들기 $ python manage.py shell >>> import datetime >>> from django.utils import timezone >>> from polls.models import Question >>> # create a Question instance with pub_date 30 days in the future >>> future_question = Question(pub_date=timezone.now() + datetime.timedelta(days=30)) >>> # was.. 2019. 7. 12.
Pycharm 단축키 필요 노트북을 사용하다보면, 작은 화면에 모든 것이 보이지 않아서 필요없는 화면은 끌 필요가 있습니다. 이 때 필요한 것이 창 닫는 단축키 인데요. Pycharm 단축키를 소개합니다. 단축키 내용 Alt + 1 프로젝트창 닫기(열기) Alt + 2 Favorite창 닫기(열기) ... Alt + num 이런식으로 숫자가 붙은 창을 열고 닫을 때 응용하시면 됩니다. Alt + F12 터미널 창 닫기(열기) 2019. 7. 12.
Django 앱 작성하기 part4 [form] 투표(vote) 양식 만들기 반영사항- POST 데이터를 처리한 후에는 항상 HttpResponseRedirect를 반환해야 한다. polls/views.py from django.shortcuts import get_object_or_404, render def results(request, question_id): question = get_object_or_404(Question, pk=question_id) return render(request, 'polls/results.html', {'question': question}) polls/templates/polls/results.html {{ question.question_text }} {% for choice in question.choic.. 2019. 7. 12.
Django 앱 작성하기 part3 [view] view view를 사용하여 만들 것 4가지 색인 페이지 (index) - 최근 질문들 표시 세부 페이지 (detail) 결과 페이지 (results) 투표 기능 (vote) Django는 URL을 조사하여 화면에 보이게 될 view를 선택한다. - URLconfs 사용 또한 뷰는 PDF 생성이나 XML 출력, 실시간으로 ZIP파일을 만들 수 있다. Django는 페이지의 정보가 담긴 HttpResponse 객체를 반환하거나, 예외를 발생시킨다. Template namespacing 뷰에서 사용할 수 있는 템플릿을 작성하여 python 코드로 부터 디자인 영역을 분리한다! Django에게 정확한 템플릿을 지정해주기 위하여 이름공간(namespacing)으로 구분짓는다. polls/templates/pol.. 2019. 7. 12.
Django 앱 작성하기 part2 [model] 모델 설문조사 앱 (poll)을 만들기 위해서 데이터베이스를 구성한다. models.py 를 작성한다. poll/models.py from django.db import models class Question(models.Model): question\_text = models.CharField(max\_length=200) pub\_date = models.DateTimeField('date published') class Choice(models.Model): question = models.ForeignKey(Question, on\_delete=models.CASCADE) choice\_text = models.CharField(max\_length=200) votes = model.. 2019. 7. 11.
리눅스 명령어 정리 (Linux commands) Linux 리눅스 유저가 시스템을 사용할 수 있는 자유도가 크다. 하지만 커널 패닉현상이 많았다. 커널 안정화를 잘한 버전 중 하나가 ubuntu ubuntu는 아프리카어로 '다양한' 이라는 뜻이다. 그럼이제 리눅스 명령어를 알아보자. Commands 명령어 내용 예제 sudo substitute user do 다른 유저(관리자 말고 나)에게 권한을 부여한다. 다른 사용자의 보안관련 권한 허용 sudo (다른 명령어) man manual man cp cp(복사명령어)에 대한 상세 보여줌 touch Update the access and modification times of each FILE to the current time. touch hello.txt clear 터미널 모든 내용 삭제 clear 깨.. 2019. 6. 28.
vector - 효율성과 편의성이 높은 array 벡터의 구현 vector는 array인데, size, clear, push_back 등을 지원해주는 효율적이며 편의성이 높은 container이다. 1.vector는 array의 기본성질을 유지한다. (maintain the primitive array) a pointer variable to the block of allocated memory, capacity, 현재 저장된 item 수 2. deep-copy 제공, operator= 제공 destructor 제공 3. resize 제공, capacity를 바꿔주는 routine을 가진다. (reserve routine~) 4. operator[] 5. size, empty, clear back, pop_back, push_back 6. nested .. 2019. 6. 24.
vscode terminal 단축키 vscode tip을 적어본다. 작은 노트북으로 코딩을 하다보면, 화면을 넓게 보고 싶을 때가 많다. 그럴 때는 필요없는 옆의 조그만한 창들을 잠시 숨겨놓으면 좋은데, ctrl + b : 옆에 explorer 창 가리기 (한번 더 누르면 탐색창이 다시 나온다.) ctrl + j : 터미널 창 가리기 (한번 더 누르면 터미널창이 다시 나온다.) 그런데 터미널을 여러개 띄워 놓았을 때 단축키로 바꾸고 싶다. 마우스 쓰기가 너무 귀찮아.. 그런데 vscode는 그게 설정이 안되있다. ctrl+k, ctrl+s : shortcut 설정 들어가서, terminal.focus 를 검색하고 들어가면 나는 이와 같이 shift + alt + 번호로 내가 가고싶은 창을 사용자세팅 하였다. shift + alt + 번호 .. 2019. 6. 20.
Class Class는 언제 사용하는가? 구조체와 관련 함수를 같이 사용하고 싶을 때 1. Constructor, 생성자 멤버변수 초기화 2. Destructor, 소멸자 프로그램 종료시 멤버변수 자동 소멸, 메모리 관리 class BSTNode { private: int key; BSTNode *l, *r; public: BSTNode(int key=0) { this->key = key; this->l = NULL; this->r = NULL; } ~BSTNode() { delete l; delete r; } int get_key() { return key; } void set_key(int key_changed) { this->key = key_changed; } BSTNode* get_left() { retu.. 2019. 6. 8.
728x90