일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- c++
- 백준
- UI한글변경
- 2557
- string 함수
- 표준 입출력
- 매크로
- 연결요소
- vscode
- 입출력 패턴
- Django의 편의성
- 구조체와 클래스의 공통점 및 차이점
- 알고리즘 공부방법
- 엑셀
- EOF
- iOS14
- getline
- 장고란
- 이분그래프
- k-eta
- 시간복잡도
- Django Nodejs 차이점
- Django란
- string 메소드
- scanf
- 프레임워크와 라이브러리의 차이
- 자료구조
- double ended queue
- 입/출력
- correlation coefficient
- Today
- Total
목록분류 전체보기 (865)
Storage Gonie
1. 데이터 입력순서 바꾸기- admin.py에서 ModelAdmin을 상속받은 클래스를 생성해서 fields에 입력받을 순서를 지정해주고, 이 클래스를 모델과 함께 register 해주면 순서를 바꿀 수 있다.admin.site.register(Question)class QuestionAdmin(admin.ModelAdmin): fields = ['pub_date','question_text'] admin.site.register(Question, QuestionAdmin) 2. 입력폼에서 중간제목 넣기- fields 대신에 fieldsets를 사용하여 중간제목을 넣어 카테고리화 하여 보여줄 수 있다.class QuestionAdmin(admin.ModelAdmin): #fields = ['pub_da..
***python manage.py test polls 명령어로 테스트를 실행하면 메소드별로 테스트 비어있는 DB가 생성되며 이는 실행종료시 같이 삭제된다. 따라서 각 메소드는 서로 영향을 받지 않는다.*** 1. 테스트 전, 쉘에서 확인한 뒤 실제 코드를 작성할 것임.(쉘에서는 따로 비어있는 DB가 생성되는게 아니란 느낌.)-"python manage.py shell"-"from django.test.utils import setup_test_environment"-"setup_test_environment" # 테스트 하기 전에 미리 수행하는 함수라고 생각하면됨. -"from django.test import Client"-"c = Client()" # 클라이언트 객체 생성-"c" # "from dj..
주제 : Model Question의 was_published_recently메소드를 자동으로 테스트하는 코드 작성하기.(테스트를 자동화하는 코드 작성) # TDD(Test-driven development)- 테스트를 먼저 작성하는 개발 방법론.- 개발자는 먼저 요구사항(제약조건)을 검증하는 자동화된 테스트 케이스를 작성한다. - 그 다음 그 테스트 케이스를 통과하기 위한 최소한의 코드를 생성한다. 마지막으로 작성한 코드를 표준에 맞게 리팩토링한다. Question의 was_published_recently메소드에는 작은 버그가 하나 있다. published_recently로 인식시키고 싶은 것은 ((하루전~현재)) 까지만 인데 ((현재~미래))도 published_recently로 인식된다는 것이다...
"""mysite URL Configuration The `urlpatterns` list routes URLs to views. For more information please see: https://docs.djangoproject.com/en/1.10/topics/http/urls/ Examples: Function views 1. Add an import: from my_app import views 2. Add a URL to urlpatterns: url(r'^$', views.home, name='home') Class-based views 1. Add an import: from other_app.views import Home 2. Add a URL to urlpatterns: url(..
1. views.py의 results메소드 수정- detail.html -> vote메소드 -> result메소드 -> results.html 대략 이 순서로 돌아감def results(request, question_id): question = get_object_or_404(Question, qk = question_id) return render(request, 'polls/results.html', {'question': question}) 2. templates/polls/results.html 생성{{question.question_text}} {% for choice in question.choice_set.all %} {{choice.choice_text}} --- {{choice.vote..
1. views.py의 vote함수 수정하기- 투표 화면에서 투표 버튼을 누르면 urls의 vote관련 url로 연결되고 vote함수가 호출된다.- 이때 question_id가 파라미터로 전달되며 vote함수에서는 urls로 부터 전달받은 question_id로 특정 Question을 얻을 수 있게 된다.- 그리고 request파라미터로 부터 from에서 선택했던 내용을 id를 통해 얻을 수 있으며 거기서 얻은 값으로 특정 choice 객체를 얻을 수 있다.- 그러면 그 얻은 객체에 대해 연산을 수행해 주면 된다.- 맨 마지막 줄 에 question_id = question_id를 해주는 이유는 polls:results에서 question_id 파라미터를 받고있기 때문이다.- 두 모듈을 추가한다.from..
모델을 이용해 만드는 방법은 디자인이 한정되어 있는데 이것은 사용자 마음대로 디자인을 구성할 수 있다. 1. detail.html수정- 아래의 코드로 수정.- question 객체는 views의 detail메소드로부터 전달받은 것.- error_message 가 있다면 에러메시지 출력.- form의 action에는 전달할 url이 들어간다.- csrf_token은 보안때문에 항상 넣어줘야 한다.(CSRF : 사용자의 의지와는 무관하게 공격자가 의도한 행위CRUD를 특정 웹사이트에 요청하게 하는 공격)- input은 라디오버튼, 라벨은 그 옆의 텍스트를 생성한다.- input의 id에서 choice는 그냥 텍스트이고 forloop.counter를 해주면 1부터 증가하는 숫자가 들어가게 된다. value에서..
1. index.html의 하드코딩된 부분을 수정한다.- 위 부분을 아래와 같이 수정.- '아래에서 detail'은 polls/urls.py의 urlpatterns 부분에 있는 name.- 결과적으로 생성되는 코드는 둘다 아래와 같음{% for question in latest_question_list %} {{ question.question_text }} {% endfor %}{% for question in latest_question_list %} {{ question.question_text }} {% endfor %} url(r'^(?P[0-9]+)/$', views.detail, name = "detail"), 2. url namespace를 사용하여 통해 중복된 name을 사용할 수 있게 ..
1. views.py에서 detail 메소드에 추가해봄def detail(request, question_id): return HttpResponse("You're looking at question %s." % question_id)def detail(request, question_id): # question_id은 url로 전달받은 값 try: q = Question.objects.get(pk = question_id) except Question.DoesNotExist: raise Http404("Question %s does not exist" % question_id) #존재하지 않을 경우 404페이지를 띄움 return render(request, 'polls/detail.html', {'q..
1. views.py의 index 메소드 수정- Question 모델을 import해줌- 아래는 수정한 후 localhost:8000/polls 에 접속한 결과- 객체.order_by 해주면 admin 페이지에 보여지는 순서도 변경된다.from django.http import HttpResponse from .models import Question def index(request): latest_question_list = Question.objects.order_by('-pub_date')[:5] # order_by('속성명') : 오름차순, ('-속성명') : 내림차순 output = " ,".join([q.question_text for q in latest_question_list]) # 리스..