본문 바로가기

반응형

파이썬 장고

[Django] 투표 기능 구현하기 1인 1투표 기능 구현하기Vote 모델 만들기이전에 투표 기능을 구현할 때([Django] 폼(Forms))는 User의 정보를 따로 받지않아 1명의 User가 여러 번 투표를 할 수 있었다. 이번에는 RESTful API framework를 이용해 계정 정보를 저장하는 모델을 따로 만들어 1개의 계정이 여러 번 투표를 할 수 없도록 하려고 한다. 먼저, 투표한 질문, 답변, 계정 정보를 담을 테이블을 생성하기 위해 모델을 만들어준다.# mysite/polls/models.pyfrom django.contrib.auth.models import Userclass Vote(models.Model): # 투표한 질문 question = models.ForeignKey(Question, on_del.. 더보기
[Django] User 항목 모델에 추가 / User 관리 / User생성 / User 권한 모델에 User 항목 추가하기User는 기본적으로 contrib.auth를 통해 관리된다. 해당 라이브러리 안의 Users라는 모델을 불러와 User가 어떤 형식으로 구성되어 있는지 shell을 통해 알아보자.>>> from django.contrib.auth.models import User>>> User>>> User._meta.get_fields()(, , , , , , , , , , , , , )User가 가지고 있는 필드는 매우 많다. id와 password부터 슈퍼유저 여부, 이메일 등등 다양한 필드를 가지고 있다. 현재 User의 리스트를 먼저 살펴보자.>>> User.objects.all()]>현재는 이전에 만들어 두었던 관리자 계정인 admin만 남아있는 상태다. 이 유저(admin)를 .. 더보기
[Django] 뷰(views)와 템플릿(templates) 뷰(Views)뷰는 말 그대로 '보여주는' 역할을 한다. HTML 페이지 또는 모델 등에서 받아온 데이터를 사용자에게 노출시켜 준다. mysite 아래에 있는 urls.py에서 해당 URL에 요청이 오면, views.py에서 지정된 함수에 의해 해당 화면을 노출시킨다.# mysite/urls.pyfrom django.contrib import adminfrom django.urls import path, include# polls/ URL 뒤에는 polls 폴더 내 urls.py 설정을 따름urlpatterns = [ path('polls/', include('polls.urls')), path('admin/', admin.site.urls),]# mysite/polls/urls.pyfrom .. 더보기
[Django] 모델 메소드(Model Method) 모델 메소드모델 메소드는 모델을 클래스로 선언할 때 아래에 작성하는 함수를 메소드로 사용하는 것을 말한다. 예를 들어, Question 모델(클래스)에 pub_date 기준 오늘 만들어진 레코드인지를 판단하는 메소드를 만들어본다고 해보자.from django.db import modelsfrom django.utils import timezonefrom datetime import timedeltaimport datetime# model 생성class Question(models.Model): question_text = models.CharField(max_length=200) pub_date = models.DateTimeField(auto_now_add=True) # pub_date가 지.. 더보기
[Django] Django Shell 사용해보기 Django Shell?Django shell은 python shell 등과 비슷한 형태를 가지고 있지만, Django 환경을 다룰 수 있는 shell이다.❯ python manage.py shellPython 3.9.0 (default, Nov 15 2020, 14:28:56) [GCC 7.3.0] on linuxType "help", "copyright", "credits" or "license" for more information.(InteractiveConsole)>>>위와 같이 manage.py의 shell 함수를 실행시켰는데, 파이썬 shell과 거의 유사한 모습을 보여준다. Django Shell로 모델 활용하기1. 조회>>> from polls.models import *>>> Quest.. 더보기

728x90