Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Пример README для Django-приложения с использованием Django REST Framework

Установка и Запуск

  1. Убедитесь, что у вас установлен Django, создайте виртуальное окружение и активируйте его:

    python -m venv venv
    source venv/bin/activate  # Для Windows: venv\Scripts\activate
  2. Установите зависимости:

    pip install -r requirements.txt
  3. Создайте новый проект Django и приложение:

    django-admin startproject config
    cd config
    python manage.py startapp task
  4. В файле config/settings.py добавьте приложение и Django REST Framework в INSTALLED_APPS:

    INSTALLED_APPS = [
        # ...
        'rest_framework',
        'task',
    ]
  5. Откройте файл task/views.py и определите функцию представления:

    from django.shortcuts import render
    from rest_framework.decorators import api_view
    from rest_framework.response import Response
    from rest_framework import status
    from .models import *
    from .serializers import *
    
    @api_view(['GET'])
        def my_views(request):
            queryset = PersonalData.objects.all()
            serializer = TaskSerializer(queryset, many=True)
        return Response(serializer.data)
  6. Откройте файл task/urls.py и определите URL-маршрут для вашей функции представления:

    from django.contrib import admin
    from django.urls import path, include
    from myapp.views import my_view
    
    urlpatterns = [
        path('admin/', admin.site.urls),
        path('my-url/', my_view, name='my-view'),
    ]
  7. Запустите сервер разработки Django:

    python manage.py runserver
  8. Перейдите по адресу http://127.0.0.1:8000/my-url/ в браузере.

Сериализаторы

  1. Установите Django REST Framework:

    pip install djangorestframework
  2. Откройте файл task/serializers.py и определите класс сериализатора:

    from rest_framework import serializers
    from .models import *
    
    class TaskSerializer(serializers.ModelSerializer):
        class Meta:
            model= PersonalData
            fields = '__all__'
            # exclude = ['id', 'title']
    
        def validate(self, attrs):
            return super().validate(attrs)
  3. В функции представления (task/views.py) используйте сериализатор:

    from rest_framework.response import Response

@api_view(['GET']) def my_views(request): queryset = PersonalData.objects.all() serializer = TaskSerializer(queryset, many=True) return Response(serializer.data) ```

  1. Определите модель PersonalData в файле (task/models.py):

    Copy code
    from django.db import models
    
    class PersonalData(models.Model):
        name = models.CharField(max_length=76)
        last_name = models.CharField(max_length=100)
        phone = models.CharField(max_length=60)
        address = models.CharField(max_length=100)
    
        def __str__(self) -> str:
            return self.name
  2. Создайте миграции и примените их:

    Copy code
    python manage.py makemigrations
    python manage.py migrate
  3. Запустите сервер разработки Django снова:

    python manage.py runserver
  4. Перейдите по адресу http://127.0.0.1:8000/my-url/ и проверьте, что сериализатор корректно обрабатывает запрос и возвращает ожидаемый ответ.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages