10월, 2020의 게시물 표시

[Django REST API] Router

  router = routers.SimpleRouter() router.register(r'users', UserViewSet) router.register(r'accounts', AccountViewSet) urlpatterns = [     path('forgot-password', ForgotPasswordFormView.as_view()),     path('', include(router.urls)), ]

[Django REST API] Views

[Views] Function based view Class based view Generic view Viewset Model  views [Function based view] @api_view(['GET', 'POST']) def hello_world(request):     if request.method == 'POST':         return Response({"message": "Got some data!", "data": request.data})     return Response({"message": "Hello, world!"}) [Class based view] from rest_framework.views import APIView from rest_framework.response import Response from rest_framework import authentication, permissions from django.contrib.auth.models import User class ListUsers(APIView):     """     View to list all users in the system.     * Requires token authentication.     * Only admin users are able to access this view.     """     authentication_classes = [authentication.TokenAuthentication]     permission_classes = [permissions.IsAdminUser]     def get(self, request, format=None):         """         Return a li

[Django REST API] Program

[REST API Program model] models.py -> admin.py ->  serializer.py(data<->json) -> views.py -> urls.py models.py class Board(models.Model):     title               = models.CharField(max_length=500)     description         = models.TextField(blank=True, null=True)     content             = RichTextUploadingField(blank=True, null=True)          view_count          = models.IntegerField(default=0, blank=True)     display_order       = models.IntegerField(default=0, blank=True, null=True)     open                = models.IntegerField(choices=codes.YESNO, default=0)     popup               = models.IntegerField(choices=codes.YESNO, default=0)     status              = models.IntegerField(choices=codes.STATUS, default=1)     creator             = models.ForeignKey(User, on_delete=models.PROTECT, related_name='board_creator', null=True, blank=True)           modifier            = models.ForeignKey(User, on_delete=models.PROTECT, related_name='board_modifier',

[Django REST API] Install

[Django REST API install] pip install djangorestframework pip install markdown                      pip install django-filter                   settings.py 수정 INSTALLED_APPS = [     ...      'rest_framework',     'django_filters', ] # Django Rest API Framework Settins REST_FRAMEWORK = {     # Use Django's standard `django.contrib.auth` permissions,     # or allow read-only access for unauthenticated users.     'DEFAULT_AUTHENTICATION_CLASSES': [         'rest_framework.authentication.TokenAuthentication',     ],     'DEFAULT_RENDERER_CLASSES': [         'rest_framework.renderers.JSONRenderer',         'rest_framework.renderers.BrowsableAPIRenderer',     ],     'DEFAULT_PERMISSION_CLASSES': [         'rest_framework.permissions.DjangoModelPermissionsOrAnonReadOnly'     ],     'DEFAULT_PARSER_CLASSES': [         'rest_framework.parsers.JSONParser',         'rest_framework.pars

test

  from django.db import models from ckeditor.fields import RichTextField from ckeditor_uploader.fields import RichTextUploadingField from filer.fields.image import FilerImageField from filer.fields.file import FilerFileField from django.shortcuts import get_object_or_404 from django.utils import timezone from django.contrib.auth.models import User from crum import get_current_user from datetime import date from django.utils.html import strip_tags from django.db.models.signals import post_save from django.dispatch import receiver from rest_framework.authtoken.models import Token from django.conf import settings from . import codes from aipass import tasks import logging logger = logging.getLogger( 'api' ) class Code ( models . Model ): pid = models.ForeignKey( 'self' , on_delete =models.PROTECT, related_name = 'code_pid' , blank = True , null = True ) code = models.CharField( max_length =

[Django Install] 12. Install Django for Centos8/RedhatLinux8

이미지
[Django Install] pip install django 장고 설치 django-admin startproject  projectname 장고 프로젝트 생성 project directory 구조 projectname /     manage.py      projectname /         __init__.py         settings.py         urls.py         asgi.py         wsgi.py [ Visual Code simpleFTP Setting] PC에 Visual Code를 설치한다. (사이트에서 설치 : https://code.visualstudio.com ) Visual Code의 Extensions에서 "ftp-simple"을 설치한다. "FTP-simple"설치 후 "F1"를 눌러서 "ftp-simple : Config - FTP connection setting"을 선택한다. 아래의 내용처럼 추가하고 저장한다. [   {         "name": " projectname ",         "host": " ec2-13-209-72-174.ap-northeast-2.compute.amazonaws.com ",  # domain or IP         "port": 22,         "type": "sftp",         "username": "ec2-user",         "path": "/home/ec2-user/ projectname ", # 접속 디렉토리         "autosave": true,         "confirm": true,         "priva