최지우

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

1 +# Generated by Django 3.1.2 on 2020-11-18 11:21
2 +
3 +from django.db import migrations, models
4 +import django.utils.timezone
5 +
6 +
7 +class Migration(migrations.Migration):
8 +
9 + initial = True
10 +
11 + dependencies = [
12 + ]
13 +
14 + operations = [
15 + migrations.CreateModel(
16 + name='Device',
17 + fields=[
18 + ('rfid_id', models.CharField(max_length=255, primary_key=True, serialize=False)),
19 + ('created', models.DateTimeField(default=django.utils.timezone.now)),
20 + ],
21 + ),
22 + migrations.CreateModel(
23 + name='Door',
24 + fields=[
25 + ('door_id', models.CharField(max_length=255, primary_key=True, serialize=False)),
26 + ],
27 + ),
28 + migrations.CreateModel(
29 + name='History',
30 + fields=[
31 + ('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
32 + ('device_name', models.CharField(max_length=255)),
33 + ('ctrtime', models.DateTimeField(default=django.utils.timezone.now)),
34 + ],
35 + ),
36 + migrations.CreateModel(
37 + name='Lock',
38 + fields=[
39 + ('id', models.IntegerField(primary_key=True, serialize=False)),
40 + ('state', models.BooleanField(default=True)),
41 + ],
42 + ),
43 + migrations.CreateModel(
44 + name='Record',
45 + fields=[
46 + ('id', models.IntegerField(primary_key=True, serialize=False)),
47 + ('recording', models.BooleanField(default=True)),
48 + ],
49 + ),
50 + migrations.CreateModel(
51 + name='Video',
52 + fields=[
53 + ('vid_name', models.CharField(max_length=255, primary_key=True, serialize=False)),
54 + ('created', models.DateTimeField(default=django.utils.timezone.now)),
55 + ('vid_time', models.CharField(max_length=255)),
56 + ('thumb', models.CharField(max_length=255)),
57 + ],
58 + ),
59 + ]
...@@ -26,4 +26,8 @@ class History(models.Model) : ...@@ -26,4 +26,8 @@ class History(models.Model) :
26 26
27 class Record(models.Model) : 27 class Record(models.Model) :
28 id = models.IntegerField(primary_key = True) 28 id = models.IntegerField(primary_key = True)
29 - recording = models.BooleanField(default = True)
...\ No newline at end of file ...\ No newline at end of file
29 + recording = models.BooleanField(default = True)
30 +
31 +class AddDevice(models.Model) :
32 + id = models.IntegerField(primary_key = True)
33 + add = models.BooleanField(default = False)
...\ No newline at end of file ...\ No newline at end of file
......
1 -from api.models import Device, Video, Lock, History, Record, Door 1 +from api.models import Device, Video, Lock, History, Record, Door, AddDevice
2 from rest_framework import serializers 2 from rest_framework import serializers
3 3
4 +class DoorSerializer(serializers.ModelSerializer) :
5 + class Meta :
6 + model = Door
7 + fields = '__all__'
4 8
5 class DeviceSerializer(serializers.ModelSerializer) : 9 class DeviceSerializer(serializers.ModelSerializer) :
6 class Meta : 10 class Meta :
...@@ -20,4 +24,16 @@ class HistorySerializer(serializers.ModelSerializer) : ...@@ -20,4 +24,16 @@ class HistorySerializer(serializers.ModelSerializer) :
20 class RecordSerializer(serializers.ModelSerializer) : 24 class RecordSerializer(serializers.ModelSerializer) :
21 class Meta : 25 class Meta :
22 model = Record 26 model = Record
23 - fields = '__all__'
...\ No newline at end of file ...\ No newline at end of file
27 + fields = '__all__'
28 +
29 +class LockSerializer(serializers.ModelSerializer) :
30 + class Meta :
31 + model = Lock
32 + fields = '__all__'
33 +
34 +
35 +class AddDeviceSerializer(serializers.ModelSerializer) :
36 + class Meta :
37 + model = AddDevice
38 + fields = '__all__'
39 +
...\ No newline at end of file ...\ No newline at end of file
......
...@@ -3,7 +3,10 @@ import boto3 ...@@ -3,7 +3,10 @@ import boto3
3 import botocore 3 import botocore
4 import time 4 import time
5 import datetime 5 import datetime
6 +import django
6 7
8 +os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'src.settings')
9 +django.setup()
7 from django.core import serializers 10 from django.core import serializers
8 from api.models import Video, Record 11 from api.models import Video, Record
9 from api.serializers import VideoSerializer, RecordSerializer 12 from api.serializers import VideoSerializer, RecordSerializer
...@@ -30,6 +33,10 @@ def record() : ...@@ -30,6 +33,10 @@ def record() :
30 33
31 try: 34 try:
32 while state : 35 while state :
36 + target = Record.objects.get(id = 1)
37 + serializer = RecordSerializer(target, many = False)
38 + state = serializer.data['recording']
39 +
33 if GPIO.input(pir_pin): # motion detected 40 if GPIO.input(pir_pin): # motion detected
34 # take a video 41 # take a video
35 camera.resolution = [320, 240] 42 camera.resolution = [320, 240]
......
...@@ -7,7 +7,7 @@ from django.core.exceptions import FieldDoesNotExist, ObjectDoesNotExist ...@@ -7,7 +7,7 @@ from django.core.exceptions import FieldDoesNotExist, ObjectDoesNotExist
7 from django.shortcuts import render 7 from django.shortcuts import render
8 8
9 from api.videorecord import record 9 from api.videorecord import record
10 -from api.models import Video, Device, History, Lock, Record, Door 10 +from api.models import Video, Device, History, Lock, Record, Door, AddDevice
11 from api.serializers import VideoSerializer, DeviceSerializer, HistorySerializer, RecordSerializer 11 from api.serializers import VideoSerializer, DeviceSerializer, HistorySerializer, RecordSerializer
12 12
13 from rest_framework import status 13 from rest_framework import status
......