From 60962c31ccfa37ccd5a4459f70af2d698fe925e5 Mon Sep 17 00:00:00 2001 From: lishuang <573230334@qq.com> Date: Tue, 13 Jun 2023 11:08:35 +0800 Subject: [PATCH 1/4] 613update --- TP_API/settings.py | 59 +++++++++++++++++++++++++++++++++++++++++++++- app/models.py | 2 +- app/urls.py | 2 +- app/views.py | 2 +- logs/debug.log | 0 logs/log_path.py | 2 ++ 6 files changed, 63 insertions(+), 4 deletions(-) create mode 100644 logs/debug.log create mode 100644 logs/log_path.py diff --git a/TP_API/settings.py b/TP_API/settings.py index b26eba1..c3e599a 100644 --- a/TP_API/settings.py +++ b/TP_API/settings.py @@ -158,4 +158,61 @@ REST_FRAMEWORK = { 'DATETIME_FORMAT': "%Y-%m-%d %H:%M:%S", 'DATE_FORMAT': "%Y-%m-%d", 'DEFAULT_FILTER_BACKENDS': ['django_filters.rest_framework.DjangoFilterBackend'], -} \ No newline at end of file +} + +# 配置日志 +from logs.log_path import LOG_DIR +LOGGING = { + 'version': 1, # 保留字 + 'disable_existing_loggers': False, # 是否禁用已经存在的日志实例 + 'formatters': { # 定义日志的格式 + 'standard': { + 'format': '[%(asctime)s][%(threadName)s:%(thread)d][task_id:%(name)s][%(filename)s:%(lineno)d]' + '[%(levelname)s][%(message)s]' + }, + 'simple': { + 'format': '[%(levelname)s][%(asctime)s][%(filename)s:%(lineno)d]%(message)s' + }, + 'collect': { + 'format': '%(message)s' + } + }, + 'filters': { # 定义日志的过滤器 + 'require_debug_true': { + '()': 'django.utils.log.RequireDebugTrue', + }, + }, + 'handlers': { # 日志处理程序 + 'console': { + 'level': 'DEBUG', + 'filters': ['require_debug_true'], # 只有在Django debug为True时才在屏幕打印日志 + 'class': 'logging.StreamHandler', + 'formatter': 'simple', + # 'filename': os.path.join(BASE_LOG_DIR, "tpservice.log") + }, + 'file': { + 'level': 'DEBUG', + 'class': 'logging.handlers.TimedRotatingFileHandler', + 'filename': os.path.join(LOG_DIR, 'debug.log'), # 日志文件 + 'when': "D", + 'interval': 1, + 'formatter': 'standard' + }, + }, + 'loggers': { # 日志实例 记录器 + 'mylogger': { # 默认的logger应用如下配置 + 'handlers': ['console', 'file'], + 'level': 'DEBUG', + 'propagate': True, # 是否向上一级logger实例传递日志信息 + }, + }, +} + + + + + + + + + diff --git a/app/models.py b/app/models.py index 280166c..236359c 100644 --- a/app/models.py +++ b/app/models.py @@ -9,7 +9,7 @@ class TP(models.Model): # 记录仪时间 record_time = models.DateTimeField() # 警号 - police_id = models.CharField(max_length=50) + police_id = models.CharField(max_length=50, null=True, blank=True) # 警号可为空 # 事件类型 event_type = models.CharField(max_length=50) # 是否违规 diff --git a/app/urls.py b/app/urls.py index 2d77315..1e43fe6 100644 --- a/app/urls.py +++ b/app/urls.py @@ -23,4 +23,4 @@ router.register('', views.ModelQuery) urlpatterns = [ path('', include(router.urls)), -] \ No newline at end of file +] diff --git a/app/views.py b/app/views.py index f59f177..8611691 100644 --- a/app/views.py +++ b/app/views.py @@ -10,7 +10,7 @@ from app.pagination import MyPageNumberPagination class ModelQuery(viewsets.ModelViewSet): # 查询类 - queryset = TP.objects.all().order_by("uid") + queryset = TP.objects.all().order_by("-uid") # 按照uid倒序 # 序列化类 serializer_class = SerialMyModel # 分页类 diff --git a/logs/debug.log b/logs/debug.log new file mode 100644 index 0000000..e69de29 diff --git a/logs/log_path.py b/logs/log_path.py new file mode 100644 index 0000000..c29af7e --- /dev/null +++ b/logs/log_path.py @@ -0,0 +1,2 @@ +import os +LOG_DIR = os.path.dirname(os.path.abspath(__file__)) \ No newline at end of file From 6fe10d080544c2b06deb9dab490edb2ba2e020a7 Mon Sep 17 00:00:00 2001 From: xfc Date: Wed, 14 Jun 2023 11:45:42 +0800 Subject: [PATCH 2/4] 6.14update --- TP_API/settings.py | 11 +---------- app/admin.py | 2 ++ app/migrations/0001_initial.py | 33 +++++++++++++++++++++++++++++++++ app/models.py | 32 +++++++++++++++++++------------- app/serializers.py | 4 ++++ db.sqlite3 | Bin 0 -> 135168 bytes 6 files changed, 59 insertions(+), 23 deletions(-) create mode 100644 app/migrations/0001_initial.py create mode 100644 db.sqlite3 diff --git a/TP_API/settings.py b/TP_API/settings.py index c3e599a..6324ffb 100644 --- a/TP_API/settings.py +++ b/TP_API/settings.py @@ -41,7 +41,7 @@ INSTALLED_APPS = [ 'rest_framework', 'django_filters', 'corsheaders', - 'app' + 'app', ] MIDDLEWARE = [ @@ -207,12 +207,3 @@ LOGGING = { }, }, } - - - - - - - - - diff --git a/app/admin.py b/app/admin.py index 8c38f3f..a932cee 100644 --- a/app/admin.py +++ b/app/admin.py @@ -1,3 +1,5 @@ from django.contrib import admin # Register your models here. +from app.models import TP +admin.site.register(TP) diff --git a/app/migrations/0001_initial.py b/app/migrations/0001_initial.py new file mode 100644 index 0000000..0a51267 --- /dev/null +++ b/app/migrations/0001_initial.py @@ -0,0 +1,33 @@ +# Generated by Django 3.2.19 on 2023-06-13 14:39 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + initial = True + + dependencies = [ + ] + + operations = [ + migrations.CreateModel( + name='TP', + fields=[ + ('uid', models.AutoField(primary_key=True, serialize=False)), + ('video_hash', models.CharField(max_length=50)), + ('record_time', models.DateTimeField()), + ('police_id', models.CharField(blank=True, max_length=50, null=True)), + ('event_type', models.CharField(max_length=50)), + ('is_violation', models.BooleanField()), + ('small_image', models.CharField(max_length=100)), + ('relative_time', models.FloatField()), + ('video_dir', models.CharField(max_length=100)), + ('car_number', models.CharField(max_length=50)), + ('ai_analysis', models.CharField(max_length=255)), + ('add_time', models.DateTimeField(auto_now_add=True)), + ('update_time', models.DateTimeField(auto_now=True)), + ('is_display', models.BooleanField(default=True)), + ], + ), + ] diff --git a/app/models.py b/app/models.py index 236359c..e280453 100644 --- a/app/models.py +++ b/app/models.py @@ -5,31 +5,37 @@ class TP(models.Model): # uid uid = models.AutoField(primary_key=True) # 视频哈希 - video_hash = models.CharField(max_length=50) + video_hash = models.CharField(max_length=50, verbose_name='视频哈希') # 记录仪时间 - record_time = models.DateTimeField() + record_time = models.DateTimeField(verbose_name='记录仪时间') # 警号 - police_id = models.CharField(max_length=50, null=True, blank=True) # 警号可为空 + police_id = models.CharField(max_length=50, null=True, blank=True, verbose_name='警号') # 警号可为空可不传 # 事件类型 - event_type = models.CharField(max_length=50) + event_type = models.CharField(max_length=50, verbose_name='事件类型') # 是否违规 - is_violation = models.BooleanField() + is_violation = models.BooleanField(verbose_name='是否违规') # 缩略图 - small_image = models.CharField(max_length=100) + small_image = models.CharField(max_length=100, verbose_name='缩略图') # 相对时间 - relative_time = models.FloatField() + relative_time = models.FloatField(verbose_name='相对时间') # 视频路径 - video_dir = models.CharField(max_length=100) + video_dir = models.CharField(max_length=100, verbose_name='视频路径') # 车牌号 - car_number = models.CharField(max_length=50) + car_number = models.CharField(max_length=50, verbose_name='车牌号', null=True, blank=True) # 车牌可为空可不传 # 分析结果 - ai_analysis = models.CharField(max_length=255) + ai_analysis = models.CharField(max_length=255, verbose_name='分析结果', null=True, blank=True) # 分析结果可为空可不传 # 加入时间 - add_time = models.DateTimeField(auto_now_add=True) + add_time = models.DateTimeField(auto_now_add=True, verbose_name='加入时间') # 更新时间 - update_time = models.DateTimeField(auto_now=True) + update_time = models.DateTimeField(auto_now=True, verbose_name='更新时间') # 是否显示 - is_display = models.BooleanField(default=True) + is_display = models.BooleanField(default=True, verbose_name='是否显示') + + class Meta: + db_table = "app_tp" + + # 排序 uid倒序 + ordering = ['-uid'] diff --git a/app/serializers.py b/app/serializers.py index e355336..78bf8f4 100644 --- a/app/serializers.py +++ b/app/serializers.py @@ -20,6 +20,10 @@ class SerialFilter(FilterSet): record_time = django_filters.DateTimeFilter(field_name='record_time', lookup_expr='icontains') police_id = django_filters.CharFilter(field_name='police_id', lookup_expr='icontains') event_type = django_filters.CharFilter(field_name='event_type', lookup_expr='icontains') + # 记录时间范围查询 + start_time = django_filters.DateTimeFilter(field_name='record_time', lookup_expr='gte') + end_time = django_filters.DateTimeFilter(field_name='record_time', lookup_expr='lte') + class Meta: # 指定模型 models = TP diff --git a/db.sqlite3 b/db.sqlite3 new file mode 100644 index 0000000000000000000000000000000000000000..37f498ccf324940f57f3160b1facc27e437ae334 GIT binary patch literal 135168 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 literal 0 HcmV?d00001 From 343bbdb923a01a5777d9af86cc4f71d38f3e5623 Mon Sep 17 00:00:00 2001 From: xfc Date: Thu, 15 Jun 2023 09:49:25 +0800 Subject: [PATCH 3/4] 6.15update --- .gitignore | 2 ++ TP_API/settings.py | 2 +- app/migrations/0001_initial.py | 33 --------------------------------- db.sqlite3 | Bin 135168 -> 139264 bytes logs/debug.log | 1 + 5 files changed, 4 insertions(+), 34 deletions(-) delete mode 100644 app/migrations/0001_initial.py diff --git a/.gitignore b/.gitignore index 48019c7..ab115d3 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,5 @@ pnpm-debug.log* *.njsproj *.sln *.sw? +*.log +db.sqlite3 \ No newline at end of file diff --git a/TP_API/settings.py b/TP_API/settings.py index 6324ffb..b615f07 100644 --- a/TP_API/settings.py +++ b/TP_API/settings.py @@ -161,7 +161,7 @@ REST_FRAMEWORK = { } # 配置日志 -from logs.log_path import LOG_DIR +LOG_DIR = os.path.join(BASE_DIR, 'logs') LOGGING = { 'version': 1, # 保留字 'disable_existing_loggers': False, # 是否禁用已经存在的日志实例 diff --git a/app/migrations/0001_initial.py b/app/migrations/0001_initial.py deleted file mode 100644 index 0a51267..0000000 --- a/app/migrations/0001_initial.py +++ /dev/null @@ -1,33 +0,0 @@ -# Generated by Django 3.2.19 on 2023-06-13 14:39 - -from django.db import migrations, models - - -class Migration(migrations.Migration): - - initial = True - - dependencies = [ - ] - - operations = [ - migrations.CreateModel( - name='TP', - fields=[ - ('uid', models.AutoField(primary_key=True, serialize=False)), - ('video_hash', models.CharField(max_length=50)), - ('record_time', models.DateTimeField()), - ('police_id', models.CharField(blank=True, max_length=50, null=True)), - ('event_type', models.CharField(max_length=50)), - ('is_violation', models.BooleanField()), - ('small_image', models.CharField(max_length=100)), - ('relative_time', models.FloatField()), - ('video_dir', models.CharField(max_length=100)), - ('car_number', models.CharField(max_length=50)), - ('ai_analysis', models.CharField(max_length=255)), - ('add_time', models.DateTimeField(auto_now_add=True)), - ('update_time', models.DateTimeField(auto_now=True)), - ('is_display', models.BooleanField(default=True)), - ], - ), - ] diff --git a/db.sqlite3 b/db.sqlite3 index 37f498ccf324940f57f3160b1facc27e437ae334..bc23afc4f610f8dfb7bc569d18fa82958b4925f0 100644 GIT binary patch delta 2002 zcmchXZERCj7{~8vZ+m;&yPho@%rREVCY!LWz3*-B)^2Ut7;FfbsWGCZ?{>I$va-bx zGD;9Wpbw$3vmnS!w~$J3(wHoK9v! z!>Qz!a5j}mkJf16ndxQ%Cas@amsPyZ++fyNKC+n1wRAHM)=W?2(q>4k6&j!^1ENd( zetL=EPDDgmh;V|G2y?t7h#V^>+>+?wqft4*%|*|0TJ#dHaBiHZc5%{6+3bkobaEcv z!O3n1>kwUvW_1q7W2vw+H5^XHN1b>=U_Fv!Xe2p7{>zfFR4krx1~|vs_2TtoZ_G@- zH*nN3+7jgVmCq^C&EJ`sV$(ayDH#a~U&DUGt2bTL|tmt)RYDD?NI(s{@_t3et1! zkv{DvuQgkNNWjOfUsGqvBl>47mn_ZZl;?9B`#`07auwKF z7+L|I)sY0Dt13*jfzIj(J}4@6y+p;|6@$zf%WcaFvyN^vy++-lP8y-%ilK@8nOui~ z6$C*pt8HomdtS+gBQM8`4xyq~GWb-Ff3U|s=no9^*c>5a#$DD z;NMr@bCuj>^iZ{Rbzo02f1XJcQ;W%`2L_g_H@ktVb_IY>-Qx$x3YInC8ZZjHv3Au` zwQ3D$P`yD=t!@thq^=8s!|IKG@J-=P5S-Q(J{tgm=wb#QC*Ys(HoOUcfj`0T;kWQ2 zJP)VfBs`w4+HnA?las&z812!6=_vyK1^ClmBDG~tIWt$?NJesvX;a>jyw#INQ7LPS5_HEm@zd#kHuYh`i!fn#7JjH%uA@Oc%$13SZZ090v zG?q)UL@?S(*N!%J_M?j!$DIgZ1!KnjU2qPbFRp_}O}gf6s; z(M6DUf^%mDbrD2gD-NMD2Zf}B6jBNnMhuh+LC7vj>>N`_-{r#>^p`8i}>iimV%o3%A(m0-250DNMDOZ79rFFSC7&!pMKV zQ7gp@^9r-kdwtb5**D--7`2zpE6nUuGGUvQf~Bxj`R70()hImo@y{BVB_~G#!6M^( zeM<9+c}kz;<~XM=Ox>bj=aTQlJL1n4y>?g^3(DZWumB|z?1wZ>!BS#b<)#@zpjF6c zr{KEqg}o+)55g%bk(H6)H?OJ#;3F=ek@FcgI3!yE-BrmxIAjf9!m)zptZrcctY|1jLp` z5XA!lc&V|?<3`>{3=@Xq`n0^}Q+g@A2$ssf3~u4= diff --git a/logs/debug.log b/logs/debug.log index e69de29..8b13789 100644 --- a/logs/debug.log +++ b/logs/debug.log @@ -0,0 +1 @@ + From bcd37fa53035ce5be1d18f9aac594199cd45bd16 Mon Sep 17 00:00:00 2001 From: xfc Date: Thu, 15 Jun 2023 10:03:48 +0800 Subject: [PATCH 4/4] 6.15update2 --- TP_API/settings.py | 2 +- app/views.py | 1 - db.sqlite3 | Bin 139264 -> 0 bytes logs/debug.log | 1 - logs/log_path.py | 2 -- 5 files changed, 1 insertion(+), 5 deletions(-) delete mode 100644 db.sqlite3 delete mode 100644 logs/debug.log delete mode 100644 logs/log_path.py diff --git a/TP_API/settings.py b/TP_API/settings.py index b615f07..0054cec 100644 --- a/TP_API/settings.py +++ b/TP_API/settings.py @@ -161,7 +161,7 @@ REST_FRAMEWORK = { } # 配置日志 -LOG_DIR = os.path.join(BASE_DIR, 'logs') +LOG_DIR = os.path.join(BASE_DIR, 'logs/') LOGGING = { 'version': 1, # 保留字 'disable_existing_loggers': False, # 是否禁用已经存在的日志实例 diff --git a/app/views.py b/app/views.py index 8611691..7b3c4d8 100644 --- a/app/views.py +++ b/app/views.py @@ -18,4 +18,3 @@ class ModelQuery(viewsets.ModelViewSet): # 条件筛选 filterset_class = SerialFilter - diff --git a/db.sqlite3 b/db.sqlite3 deleted file mode 100644 index bc23afc4f610f8dfb7bc569d18fa82958b4925f0..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 139264 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