최지우

AddDevice 모델 추가(기기 추가 가능 상태:Bool)

# Generated by Django 3.1.2 on 2020-11-18 11:21
from django.db import migrations, models
import django.utils.timezone
class Migration(migrations.Migration):
initial = True
dependencies = [
]
operations = [
migrations.CreateModel(
name='Device',
fields=[
('rfid_id', models.CharField(max_length=255, primary_key=True, serialize=False)),
('created', models.DateTimeField(default=django.utils.timezone.now)),
],
),
migrations.CreateModel(
name='Door',
fields=[
('door_id', models.CharField(max_length=255, primary_key=True, serialize=False)),
],
),
migrations.CreateModel(
name='History',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('device_name', models.CharField(max_length=255)),
('ctrtime', models.DateTimeField(default=django.utils.timezone.now)),
],
),
migrations.CreateModel(
name='Lock',
fields=[
('id', models.IntegerField(primary_key=True, serialize=False)),
('state', models.BooleanField(default=True)),
],
),
migrations.CreateModel(
name='Record',
fields=[
('id', models.IntegerField(primary_key=True, serialize=False)),
('recording', models.BooleanField(default=True)),
],
),
migrations.CreateModel(
name='Video',
fields=[
('vid_name', models.CharField(max_length=255, primary_key=True, serialize=False)),
('created', models.DateTimeField(default=django.utils.timezone.now)),
('vid_time', models.CharField(max_length=255)),
('thumb', models.CharField(max_length=255)),
],
),
]
......@@ -26,4 +26,8 @@ class History(models.Model) :
class Record(models.Model) :
id = models.IntegerField(primary_key = True)
recording = models.BooleanField(default = True)
\ No newline at end of file
recording = models.BooleanField(default = True)
class AddDevice(models.Model) :
id = models.IntegerField(primary_key = True)
add = models.BooleanField(default = False)
\ No newline at end of file
......
from api.models import Device, Video, Lock, History, Record, Door
from api.models import Device, Video, Lock, History, Record, Door, AddDevice
from rest_framework import serializers
class DoorSerializer(serializers.ModelSerializer) :
class Meta :
model = Door
fields = '__all__'
class DeviceSerializer(serializers.ModelSerializer) :
class Meta :
......@@ -20,4 +24,16 @@ class HistorySerializer(serializers.ModelSerializer) :
class RecordSerializer(serializers.ModelSerializer) :
class Meta :
model = Record
fields = '__all__'
\ No newline at end of file
fields = '__all__'
class LockSerializer(serializers.ModelSerializer) :
class Meta :
model = Lock
fields = '__all__'
class AddDeviceSerializer(serializers.ModelSerializer) :
class Meta :
model = AddDevice
fields = '__all__'
\ No newline at end of file
......
......@@ -3,7 +3,10 @@ import boto3
import botocore
import time
import datetime
import django
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'src.settings')
django.setup()
from django.core import serializers
from api.models import Video, Record
from api.serializers import VideoSerializer, RecordSerializer
......@@ -30,6 +33,10 @@ def record() :
try:
while state :
target = Record.objects.get(id = 1)
serializer = RecordSerializer(target, many = False)
state = serializer.data['recording']
if GPIO.input(pir_pin): # motion detected
# take a video
camera.resolution = [320, 240]
......
......@@ -7,7 +7,7 @@ from django.core.exceptions import FieldDoesNotExist, ObjectDoesNotExist
from django.shortcuts import render
from api.videorecord import record
from api.models import Video, Device, History, Lock, Record, Door
from api.models import Video, Device, History, Lock, Record, Door, AddDevice
from api.serializers import VideoSerializer, DeviceSerializer, HistorySerializer, RecordSerializer
from rest_framework import status
......