From f2226b94c0f7ccf76a8320243cc4062f825cd0b6 Mon Sep 17 00:00:00 2001 From: behruz-dev Date: Thu, 14 Aug 2025 13:40:34 +0500 Subject: [PATCH] add new apis --- ...employee_estimatework_end_date_and_more.py | 40 + core/apps/projects/models/project_estimate.py | 15 +- .../projects/serializers/estimate_work.py | 11 +- docker/Dockerfile.web | 26 +- resources/logs/django.log.2025-08-06 | 476 --------- resources/logs/django.log.2025-08-07 | 982 ------------------ resources/logs/django.log.2025-08-09 | 272 ----- 7 files changed, 70 insertions(+), 1752 deletions(-) create mode 100644 core/apps/projects/migrations/0016_estimatework_employee_estimatework_end_date_and_more.py delete mode 100644 resources/logs/django.log.2025-08-06 delete mode 100644 resources/logs/django.log.2025-08-07 delete mode 100644 resources/logs/django.log.2025-08-09 diff --git a/core/apps/projects/migrations/0016_estimatework_employee_estimatework_end_date_and_more.py b/core/apps/projects/migrations/0016_estimatework_employee_estimatework_end_date_and_more.py new file mode 100644 index 0000000..ddc5bd8 --- /dev/null +++ b/core/apps/projects/migrations/0016_estimatework_employee_estimatework_end_date_and_more.py @@ -0,0 +1,40 @@ +# Generated by Django 5.2.4 on 2025-08-14 13:29 + +from django.conf import settings +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('projects', '0015_estimateproduct_estimate_work'), + migrations.swappable_dependency(settings.AUTH_USER_MODEL), + ] + + operations = [ + migrations.AddField( + model_name='estimatework', + name='employee', + field=models.ManyToManyField(blank=True, related_name='estimate_work', to=settings.AUTH_USER_MODEL), + ), + migrations.AddField( + model_name='estimatework', + name='end_date', + field=models.DateField(blank=True, null=True), + ), + migrations.AddField( + model_name='estimatework', + name='percentage', + field=models.PositiveSmallIntegerField(blank=True, db_default=0, null=True), + ), + migrations.AddField( + model_name='estimatework', + name='start_date', + field=models.DateField(blank=True, null=True), + ), + migrations.AddField( + model_name='estimatework', + name='status', + field=models.CharField(choices=[('OPEN', 'ochiq'), ('IN_PROGRESS', 'bajarilmoqda'), ('DONE', 'bajarildi')], default='ochiq', max_length=20), + ), + ] diff --git a/core/apps/projects/models/project_estimate.py b/core/apps/projects/models/project_estimate.py index e68f5e1..086a530 100644 --- a/core/apps/projects/models/project_estimate.py +++ b/core/apps/projects/models/project_estimate.py @@ -4,6 +4,7 @@ from django.utils.translation import gettext_lazy as _ from core.apps.shared.models import BaseModel from core.apps.projects.models import Project from core.apps.products.models import Unity, Product +from core.apps.accounts.models import User class ProjectEstimate(BaseModel): @@ -19,6 +20,12 @@ class ProjectEstimate(BaseModel): class EstimateWork(BaseModel): + STATUS = ( + ('OPEN', 'ochiq'), + ('IN_PROGRESS', 'bajarilmoqda'), + ('DONE', 'bajarildi'), + ) + number = models.PositiveIntegerField(default=1) name = models.CharField(max_length=200) quantity = models.PositiveIntegerField(default=1) @@ -29,9 +36,15 @@ class EstimateWork(BaseModel): estimate = models.ForeignKey( ProjectEstimate, on_delete=models.CASCADE, related_name='estimate_works' ) - date = models.DateField(null=True, blank=True) + date = models.DateField(null=True, blank=True) total_price = models.PositiveBigIntegerField(default=0) + status = models.CharField(choices=STATUS, max_length=20, default='ochiq') + start_date = models.DateField(null=True, blank=True) + end_date = models.DateField(null=True, blank=True) + employee = models.ManyToManyField(User, related_name='estimate_work', blank=True) + percentage = models.PositiveSmallIntegerField(db_default=0, null=True, blank=True) + def __str__(self): return f"{self.number}.{self.name}" diff --git a/core/apps/projects/serializers/estimate_work.py b/core/apps/projects/serializers/estimate_work.py index 73ae6e3..8c41c51 100644 --- a/core/apps/projects/serializers/estimate_work.py +++ b/core/apps/projects/serializers/estimate_work.py @@ -66,16 +66,21 @@ class EstimateWorkUpdateSerializer(serializers.ModelSerializer): class Meta: model = EstimateWork fields = [ - 'name', 'quantity', 'price', 'unity', 'date', 'total_price', + 'name', 'quantity', 'price', 'unity', 'date', 'total_price', 'employee', 'status', + 'start_date', 'end_date' ] def update(self, instance, validated_data): + employee_ids = validated_data.pop('employee', []) instance.name = validated_data.get('name', instance.name) instance.quantity = validated_data.get('quantity', instance.quantity) instance.price = validated_data.get('price', instance.price) instance.unity = validated_data.get('unity', instance.unity) instance.date = validated_data.get('date', instance.date) instance.total_price = validated_data.get('total_price', instance.total_price) + instance.status = validated_data.get('status', instance.status) + instance.start_date = validated_data.get('start_date', instance.start_date) + instance.end_date = validated_data.get('end_date', instance.end_date) + instance.employee.set(employee_ids) instance.save() - return instance - + return instance \ No newline at end of file diff --git a/docker/Dockerfile.web b/docker/Dockerfile.web index 38e6222..7d6e714 100644 --- a/docker/Dockerfile.web +++ b/docker/Dockerfile.web @@ -1,23 +1,13 @@ -FROM python:3.12 +FROM python:3.13-alpine + +ENV PYTHONPYCACHEPREFIX=/dev/null + +RUN apk update && apk add git gettext WORKDIR /code -RUN apt-get update && \ - apt-get install -y \ - gdal-bin \ - libgdal-dev \ - python3-gdal \ - libgeos-dev \ - libproj-dev \ - g++ \ - make \ - wkhtmltopdf && \ - apt-get clean && \ - rm -rf /var/lib/apt/lists/* +COPY requirements.txt /code/requirements.txt -RUN gdalinfo --version +RUN --mount=type=cache,target=/root/.cache/pip pip install -r requirements.txt -COPY ./ /code -RUN --mount=type=cache,target=/root/.cache/pip python3 -m pip install -r requirements.txt - -CMD ["sh", "./resources/scripts/entrypoint.sh"] \ No newline at end of file +CMD ["sh", "./entrypoint.sh"] \ No newline at end of file diff --git a/resources/logs/django.log.2025-08-06 b/resources/logs/django.log.2025-08-06 deleted file mode 100644 index 951628a..0000000 --- a/resources/logs/django.log.2025-08-06 +++ /dev/null @@ -1,476 +0,0 @@ -WARNING 2025-08-06 13:53:34,415 log Forbidden: /swagger/ -WARNING 2025-08-06 13:53:35,375 log Forbidden: /swagger/ -WARNING 2025-08-06 13:53:35,490 log Not Found: /favicon.ico -WARNING 2025-08-06 13:53:37,037 log Forbidden: /swagger/ -WARNING 2025-08-06 13:53:52,107 log Forbidden: /swagger/ -WARNING 2025-08-06 13:53:52,970 log Forbidden: /swagger/ -WARNING 2025-08-06 13:53:53,576 log Forbidden: /swagger/ -WARNING 2025-08-06 13:53:54,141 log Forbidden: /swagger/ -WARNING 2025-08-06 13:53:54,340 log Forbidden: /swagger/ -WARNING 2025-08-06 13:53:54,525 log Forbidden: /swagger/ -WARNING 2025-08-06 13:53:54,703 log Forbidden: /swagger/ -WARNING 2025-08-06 13:53:54,872 log Forbidden: /swagger/ -WARNING 2025-08-06 13:53:55,036 log Forbidden: /swagger/ -WARNING 2025-08-06 13:54:00,921 log Forbidden: /swagger/ -ERROR 2025-08-06 13:54:17,281 log Internal Server Error: /api/v1/accounts/auth/login/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/code/core/apps/accounts/views/login.py", line 21, in post - 'role': user.role.name, - ^^^^^^^^^^^^^^ -AttributeError: 'NoneType' object has no attribute 'name' -ERROR 2025-08-06 13:54:59,401 log Internal Server Error: /api/v1/accounts/auth/login/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/code/core/apps/accounts/views/login.py", line 22, in post - 'permissions': user.role.permissions.values_list('code', flat=True), - ^^^^^^^^^^^^^^^^^^^^^ -AttributeError: 'NoneType' object has no attribute 'permissions' -WARNING 2025-08-06 13:55:28,281 log Forbidden: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 13:55:55,325 log Forbidden: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 13:55:56,107 log Forbidden: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 13:56:17,034 log Forbidden: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 13:56:38,553 log Forbidden: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 13:56:39,250 log Forbidden: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 13:56:39,957 log Forbidden: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 13:56:53,859 log Forbidden: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 13:56:54,573 log Forbidden: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 13:56:54,890 log Forbidden: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 13:56:55,082 log Forbidden: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 13:56:55,248 log Forbidden: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 13:56:55,455 log Forbidden: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 13:56:56,637 log Forbidden: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 13:57:07,161 log Forbidden: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 13:57:18,692 log Forbidden: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 13:59:19,740 log Unauthorized: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 13:59:20,748 log Unauthorized: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 14:35:29,759 log Forbidden (Origin checking failed - http://localhost:8001 does not match any trusted origins.): /admin/login/ -WARNING 2025-08-06 14:35:29,886 log Not Found: /favicon.ico -WARNING 2025-08-06 14:35:32,731 log Forbidden (Origin checking failed - http://localhost:8001 does not match any trusted origins.): /admin/login/ -WARNING 2025-08-06 14:59:28,476 log Unauthorized: /api/v1/accounts/user/profile/ -WARNING 2025-08-06 15:21:23,312 log Unauthorized: /api/v1/accounts/role/list/ -WARNING 2025-08-06 15:21:51,454 log Unauthorized: /api/v1/accounts/role/list/ -WARNING 2025-08-06 15:22:15,049 log Forbidden: /api/v1/accounts/role/list/ -WARNING 2025-08-06 15:22:17,204 log Forbidden: /api/v1/accounts/role/list/ -WARNING 2025-08-06 15:22:17,665 log Forbidden: /api/v1/accounts/role/list/ -WARNING 2025-08-06 15:22:17,812 log Forbidden: /api/v1/accounts/role/list/ -WARNING 2025-08-06 15:22:17,975 log Forbidden: /api/v1/accounts/role/list/ -WARNING 2025-08-06 15:22:18,145 log Forbidden: /api/v1/accounts/role/list/ -WARNING 2025-08-06 15:22:18,294 log Forbidden: /api/v1/accounts/role/list/ -WARNING 2025-08-06 15:22:18,442 log Forbidden: /api/v1/accounts/role/list/ -WARNING 2025-08-06 15:22:18,585 log Forbidden: /api/v1/accounts/role/list/ -WARNING 2025-08-06 15:22:38,868 log Forbidden: /api/v1/accounts/role/list/ -WARNING 2025-08-06 15:23:44,301 log Bad Request: /api/v1/accounts/user/create/ -WARNING 2025-08-06 15:25:28,717 log Bad Request: /api/v1/accounts/user/create/ -WARNING 2025-08-06 15:25:42,545 log Bad Request: /api/v1/accounts/user/create/ -ERROR 2025-08-06 15:26:11,525 log Internal Server Error: /api/v1/accounts/user/create/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 105, in _execute - return self.cursor.execute(sql, params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -psycopg2.errors.UniqueViolation: duplicate key value violates unique constraint "accounts_user_username_key" -DETAIL: Key (username)=(behruz-dev) already exists. - - -The above exception was the direct cause of the following exception: - -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/code/core/apps/accounts/views/user.py", line 64, in post - serializer.save() - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 210, in save - self.instance = self.create(validated_data) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/code/core/apps/accounts/serializers/user.py", line 53, in create - user = User.objects.create( - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method - return getattr(self.get_queryset(), name)(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 663, in create - obj.save(force_insert=True, using=self.db) - File "/usr/local/lib/python3.12/site-packages/django/contrib/auth/base_user.py", line 65, in save - super().save(*args, **kwargs) - File "/usr/local/lib/python3.12/site-packages/django/db/models/base.py", line 902, in save - self.save_base( - File "/usr/local/lib/python3.12/site-packages/django/db/models/base.py", line 1008, in save_base - updated = self._save_table( - ^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/base.py", line 1169, in _save_table - results = self._do_insert( - ^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/base.py", line 1210, in _do_insert - return manager._insert( - ^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method - return getattr(self.get_queryset(), name)(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1868, in _insert - return query.get_compiler(using=using).execute_sql(returning_fields) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/compiler.py", line 1882, in execute_sql - cursor.execute(sql, params) - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 122, in execute - return super().execute(sql, params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/cacheops/transaction.py", line 98, in execute - result = self._no_monkey.execute(self, sql, params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 79, in execute - return self._execute_with_wrappers( - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 92, in _execute_with_wrappers - return executor(sql, params, many, context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 100, in _execute - with self.db.wrap_database_errors: - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/utils.py", line 91, in __exit__ - raise dj_exc_value.with_traceback(traceback) from exc_value - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 105, in _execute - return self.cursor.execute(sql, params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -django.db.utils.IntegrityError: duplicate key value violates unique constraint "accounts_user_username_key" -DETAIL: Key (username)=(behruz-dev) already exists. - -WARNING 2025-08-06 15:26:54,364 log Bad Request: /api/v1/accounts/user/create/ -WARNING 2025-08-06 15:26:55,258 log Bad Request: /api/v1/accounts/user/create/ -WARNING 2025-08-06 16:29:39,278 log Unauthorized: /api/v1/accounts/permission/list/ -WARNING 2025-08-06 16:30:00,966 log Unauthorized: /api/v1/accounts/permission/list/ -ERROR 2025-08-06 16:38:41,912 log Internal Server Error: /api/v1/accounts/user/permissions/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/code/core/apps/accounts/views/user.py", line 107, in get - permissions = request.user.role.permission - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -AttributeError: 'Role' object has no attribute 'permission'. Did you mean: 'permissions'? -ERROR 2025-08-06 16:38:43,419 log Internal Server Error: /api/v1/accounts/user/permissions/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/code/core/apps/accounts/views/user.py", line 107, in get - permissions = request.user.role.permission - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -AttributeError: 'Role' object has no attribute 'permission'. Did you mean: 'permissions'? -ERROR 2025-08-06 16:40:23,199 log Internal Server Error: /api/v1/accounts/user/permissions/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/code/core/apps/accounts/views/user.py", line 108, in get - permission = Permission.objects.filter(roles=request.user) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method - return getattr(self.get_queryset(), name)(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1493, in filter - return self._filter_or_exclude(False, args, kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1511, in _filter_or_exclude - clone._filter_or_exclude_inplace(negate, args, kwargs) - File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1518, in _filter_or_exclude_inplace - self._query.add_q(Q(*args, **kwargs)) - File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1646, in add_q - clause, _ = self._add_q(q_object, can_reuse) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1678, in _add_q - child_clause, needed_inner = self.build_filter( - ^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1563, in build_filter - self.check_related_objects(join_info.final_field, value, join_info.opts) - File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1372, in check_related_objects - self.check_query_object_type(value, opts, field) - File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/query.py", line 1349, in check_query_object_type - raise ValueError( -ValueError: Cannot query "admin": Must be "Role" instance. -ERROR 2025-08-06 16:40:34,000 log Internal Server Error: /api/v1/accounts/user/permissions/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/code/core/apps/accounts/views/user.py", line 108, in get - permission = Permission.objects.filter(roles=request.user.rol) - ^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/functional.py", line 253, in inner - return func(_wrapped, *args) - ^^^^^^^^^^^^^^^^^^^^^ -AttributeError: 'User' object has no attribute 'rol'. Did you mean: 'role'? -ERROR 2025-08-06 16:40:35,208 log Internal Server Error: /api/v1/accounts/user/permissions/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/code/core/apps/accounts/views/user.py", line 108, in get - permission = Permission.objects.filter(roles=request.user.rol) - ^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/functional.py", line 253, in inner - return func(_wrapped, *args) - ^^^^^^^^^^^^^^^^^^^^^ -AttributeError: 'User' object has no attribute 'rol'. Did you mean: 'role'? -WARNING 2025-08-06 17:26:00,186 log Forbidden: /api/v1/accounts/permission/list/ -WARNING 2025-08-06 17:26:42,953 log Forbidden: /api/v1/accounts/permission/list/ diff --git a/resources/logs/django.log.2025-08-07 b/resources/logs/django.log.2025-08-07 deleted file mode 100644 index 7826a50..0000000 --- a/resources/logs/django.log.2025-08-07 +++ /dev/null @@ -1,982 +0,0 @@ -WARNING 2025-08-07 09:58:53,151 log Forbidden: /api/v1/projects/project_folder/list/ -ERROR 2025-08-07 11:51:37,635 log Internal Server Error: /api/v1/shared/region/list/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/generics.py", line 203, in get - return self.list(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/mixins.py", line 40, in list - page = self.paginate_queryset(queryset) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/generics.py", line 175, in paginate_queryset - return self.paginator.paginate_queryset(queryset, self.request, view=self) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/pagination.py", line 211, in paginate_queryset - self.page = paginator.page(page_number) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/core/paginator.py", line 89, in page - number = self.validate_number(number) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/core/paginator.py", line 70, in validate_number - if number > self.num_pages: - ^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/functional.py", line 47, in __get__ - res = instance.__dict__[self.name] = self.func(instance) - ^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/core/paginator.py", line 116, in num_pages - if self.count == 0 and not self.allow_empty_first_page: - ^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/functional.py", line 47, in __get__ - res = instance.__dict__[self.name] = self.func(instance) - ^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/core/paginator.py", line 110, in count - return c() - ^^^ - File "/usr/local/lib/python3.12/site-packages/cacheops/query.py", line 271, in count - return cached_as(self)(lambda: self._no_monkey.count(self))() - ^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/cacheops/query.py", line 64, in cached_as - qs_keys = [qs._cache_key(prefix=False) for qs in querysets] - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/cacheops/query.py", line 152, in _cache_key - sql, params = self.query.get_compiler(self.db).as_sql() - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/compiler.py", line 766, in as_sql - extra_select, order_by, group_by = self.pre_sql_setup( - ^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/compiler.py", line 85, in pre_sql_setup - self.setup_query(with_col_aliases=with_col_aliases) - File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/compiler.py", line 74, in setup_query - self.select, self.klass_info, self.annotation_col_map = self.get_select( - ^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/compiler.py", line 299, in get_select - related_klass_infos = self.get_related_selections(select, select_mask) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/compiler.py", line 1396, in get_related_selections - raise FieldError( -django.core.exceptions.FieldError: Invalid field name(s) given in select_related: 'districts'. Choices are: (none) -ERROR 2025-08-07 11:57:37,791 log Internal Server Error: /admin/projects/project/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 105, in _execute - return self.cursor.execute(sql, params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -psycopg2.errors.UndefinedColumn: column projects_project.location_id does not exist -LINE 1: ...project"."updated_at", "projects_project"."name", "projects_... - ^ -HINT: Perhaps you meant to reference the column "projects_project.location". - - -The above exception was the direct cause of the following exception: - -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/options.py", line 719, in wrapper - return self.admin_site.admin_view(view)(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/decorators.py", line 192, in _view_wrapper - result = _process_exception(request, e) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/decorators.py", line 190, in _view_wrapper - response = view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/cache.py", line 80, in _view_wrapper - response = view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/sites.py", line 246, in inner - return view(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/decorators.py", line 48, in _wrapper - return bound_method(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/decorators.py", line 192, in _view_wrapper - result = _process_exception(request, e) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/decorators.py", line 190, in _view_wrapper - response = view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/options.py", line 2163, in changelist_view - "selection_note": _("0 of %(cnt)s selected") % {"cnt": len(cl.result_list)}, - ^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 366, in __len__ - self._fetch_all() - File "/usr/local/lib/python3.12/site-packages/cacheops/query.py", line 250, in _fetch_all - return self._no_monkey._fetch_all(self) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1949, in _fetch_all - self._result_cache = list(self._iterable_class(self)) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 91, in __iter__ - results = compiler.execute_sql( - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/compiler.py", line 1623, in execute_sql - cursor.execute(sql, params) - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 122, in execute - return super().execute(sql, params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/cacheops/transaction.py", line 98, in execute - result = self._no_monkey.execute(self, sql, params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 79, in execute - return self._execute_with_wrappers( - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 92, in _execute_with_wrappers - return executor(sql, params, many, context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 100, in _execute - with self.db.wrap_database_errors: - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/utils.py", line 91, in __exit__ - raise dj_exc_value.with_traceback(traceback) from exc_value - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 105, in _execute - return self.cursor.execute(sql, params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -django.db.utils.ProgrammingError: column projects_project.location_id does not exist -LINE 1: ...project"."updated_at", "projects_project"."name", "projects_... - ^ -HINT: Perhaps you meant to reference the column "projects_project.location". - -WARNING 2025-08-07 11:57:37,989 log Not Found: /favicon.ico -ERROR 2025-08-07 11:59:27,529 log Internal Server Error: /admin/projects/project/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 105, in _execute - return self.cursor.execute(sql, params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -psycopg2.errors.UndefinedColumn: column projects_project.location_id does not exist -LINE 1: ...project"."updated_at", "projects_project"."name", "projects_... - ^ -HINT: Perhaps you meant to reference the column "projects_project.location". - - -The above exception was the direct cause of the following exception: - -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/options.py", line 719, in wrapper - return self.admin_site.admin_view(view)(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/decorators.py", line 192, in _view_wrapper - result = _process_exception(request, e) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/decorators.py", line 190, in _view_wrapper - response = view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/cache.py", line 80, in _view_wrapper - response = view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/sites.py", line 246, in inner - return view(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/decorators.py", line 48, in _wrapper - return bound_method(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/decorators.py", line 192, in _view_wrapper - result = _process_exception(request, e) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/decorators.py", line 190, in _view_wrapper - response = view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/options.py", line 2163, in changelist_view - "selection_note": _("0 of %(cnt)s selected") % {"cnt": len(cl.result_list)}, - ^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 366, in __len__ - self._fetch_all() - File "/usr/local/lib/python3.12/site-packages/cacheops/query.py", line 250, in _fetch_all - return self._no_monkey._fetch_all(self) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 1949, in _fetch_all - self._result_cache = list(self._iterable_class(self)) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 91, in __iter__ - results = compiler.execute_sql( - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/sql/compiler.py", line 1623, in execute_sql - cursor.execute(sql, params) - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 122, in execute - return super().execute(sql, params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/cacheops/transaction.py", line 98, in execute - result = self._no_monkey.execute(self, sql, params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 79, in execute - return self._execute_with_wrappers( - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 92, in _execute_with_wrappers - return executor(sql, params, many, context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 100, in _execute - with self.db.wrap_database_errors: - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/utils.py", line 91, in __exit__ - raise dj_exc_value.with_traceback(traceback) from exc_value - File "/usr/local/lib/python3.12/site-packages/django/db/backends/utils.py", line 105, in _execute - return self.cursor.execute(sql, params) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -django.db.utils.ProgrammingError: column projects_project.location_id does not exist -LINE 1: ...project"."updated_at", "projects_project"."name", "projects_... - ^ -HINT: Perhaps you meant to reference the column "projects_project.location". - -ERROR 2025-08-07 12:05:59,338 log Internal Server Error: /admin/projects/projectlocation/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/django/db/models/options.py", line 683, in get_field - return self.fields_map[field_name] - ~~~~~~~~~~~~~~~^^^^^^^^^^^^ -KeyError: 'logitude' - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/utils.py", line 362, in label_for_field - field = _get_non_gfk_field(model._meta, name) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/utils.py", line 330, in _get_non_gfk_field - field = opts.get_field(name) - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/options.py", line 685, in get_field - raise FieldDoesNotExist( -django.core.exceptions.FieldDoesNotExist: ProjectLocation has no field named 'logitude' - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/django/db/models/options.py", line 683, in get_field - return self.fields_map[field_name] - ~~~~~~~~~~~~~~~^^^^^^^^^^^^ -KeyError: 'logitude' - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/utils.py", line 383, in label_for_field - attr = get_fields_from_path(model, name)[-1] - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/utils.py", line 547, in get_fields_from_path - fields.append(parent._meta.get_field(piece)) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/options.py", line 685, in get_field - raise FieldDoesNotExist( -django.core.exceptions.FieldDoesNotExist: ProjectLocation has no field named 'logitude' - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 284, in _get_response_async - response = await sync_to_async( - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/response.py", line 114, in render - self.content = self.rendered_content - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/response.py", line 92, in rendered_content - return template.render(context, self._request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/backends/django.py", line 107, in render - return self.template.render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 171, in render - return self._render(context) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 163, in _render - return self.nodelist.render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 1016, in render - return SafeString("".join([node.render_annotated(context) for node in self])) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 977, in render_annotated - return self.render(context) - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/loader_tags.py", line 159, in render - return compiled_parent._render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 163, in _render - return self.nodelist.render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 1016, in render - return SafeString("".join([node.render_annotated(context) for node in self])) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 977, in render_annotated - return self.render(context) - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/loader_tags.py", line 159, in render - return compiled_parent._render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 163, in _render - return self.nodelist.render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 1016, in render - return SafeString("".join([node.render_annotated(context) for node in self])) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 977, in render_annotated - return self.render(context) - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/loader_tags.py", line 65, in render - result = block.nodelist.render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 1016, in render - return SafeString("".join([node.render_annotated(context) for node in self])) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 977, in render_annotated - return self.render(context) - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/loader_tags.py", line 65, in render - result = block.nodelist.render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 1016, in render - return SafeString("".join([node.render_annotated(context) for node in self])) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 977, in render_annotated - return self.render(context) - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/loader_tags.py", line 65, in render - result = block.nodelist.render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 1016, in render - return SafeString("".join([node.render_annotated(context) for node in self])) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 977, in render_annotated - return self.render(context) - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/templatetags/base.py", line 45, in render - return super().render(context) - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/library.py", line 359, in render - _dict = self.func(*resolved_args, **resolved_kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/templatetags/admin_list.py", line 344, in result_list - headers = list(result_headers(cl)) - ^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/templatetags/admin_list.py", line 91, in result_headers - text, attr = label_for_field( - ^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/utils.py", line 390, in label_for_field - raise AttributeError(message) -AttributeError: Unable to lookup 'logitude' on ProjectLocation or ProjectLocation -ERROR 2025-08-07 12:06:03,853 log Internal Server Error: /admin/projects/projectlocation/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/django/db/models/options.py", line 683, in get_field - return self.fields_map[field_name] - ~~~~~~~~~~~~~~~^^^^^^^^^^^^ -KeyError: 'logitude' - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/utils.py", line 362, in label_for_field - field = _get_non_gfk_field(model._meta, name) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/utils.py", line 330, in _get_non_gfk_field - field = opts.get_field(name) - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/options.py", line 685, in get_field - raise FieldDoesNotExist( -django.core.exceptions.FieldDoesNotExist: ProjectLocation has no field named 'logitude' - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/django/db/models/options.py", line 683, in get_field - return self.fields_map[field_name] - ~~~~~~~~~~~~~~~^^^^^^^^^^^^ -KeyError: 'logitude' - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/utils.py", line 383, in label_for_field - attr = get_fields_from_path(model, name)[-1] - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/utils.py", line 547, in get_fields_from_path - fields.append(parent._meta.get_field(piece)) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/options.py", line 685, in get_field - raise FieldDoesNotExist( -django.core.exceptions.FieldDoesNotExist: ProjectLocation has no field named 'logitude' - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 284, in _get_response_async - response = await sync_to_async( - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/response.py", line 114, in render - self.content = self.rendered_content - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/response.py", line 92, in rendered_content - return template.render(context, self._request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/backends/django.py", line 107, in render - return self.template.render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 171, in render - return self._render(context) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 163, in _render - return self.nodelist.render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 1016, in render - return SafeString("".join([node.render_annotated(context) for node in self])) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 977, in render_annotated - return self.render(context) - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/loader_tags.py", line 159, in render - return compiled_parent._render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 163, in _render - return self.nodelist.render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 1016, in render - return SafeString("".join([node.render_annotated(context) for node in self])) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 977, in render_annotated - return self.render(context) - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/loader_tags.py", line 159, in render - return compiled_parent._render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 163, in _render - return self.nodelist.render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 1016, in render - return SafeString("".join([node.render_annotated(context) for node in self])) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 977, in render_annotated - return self.render(context) - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/loader_tags.py", line 65, in render - result = block.nodelist.render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 1016, in render - return SafeString("".join([node.render_annotated(context) for node in self])) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 977, in render_annotated - return self.render(context) - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/loader_tags.py", line 65, in render - result = block.nodelist.render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 1016, in render - return SafeString("".join([node.render_annotated(context) for node in self])) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 977, in render_annotated - return self.render(context) - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/loader_tags.py", line 65, in render - result = block.nodelist.render(context) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 1016, in render - return SafeString("".join([node.render_annotated(context) for node in self])) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/base.py", line 977, in render_annotated - return self.render(context) - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/templatetags/base.py", line 45, in render - return super().render(context) - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/template/library.py", line 359, in render - _dict = self.func(*resolved_args, **resolved_kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/templatetags/admin_list.py", line 344, in result_list - headers = list(result_headers(cl)) - ^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/templatetags/admin_list.py", line 91, in result_headers - text, attr = label_for_field( - ^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/contrib/admin/utils.py", line 390, in label_for_field - raise AttributeError(message) -AttributeError: Unable to lookup 'logitude' on ProjectLocation or ProjectLocation -ERROR 2025-08-07 12:15:49,386 log Internal Server Error: /api/v1/projects/project/create/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/generics.py", line 194, in post - return self.create(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/mixins.py", line 19, in create - self.perform_create(serializer) - File "/usr/local/lib/python3.12/site-packages/rest_framework/mixins.py", line 24, in perform_create - serializer.save() - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 210, in save - self.instance = self.create(validated_data) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/code/core/apps/projects/serializers/project.py", line 72, in create - location = ProjectLocation.objects.create( - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/manager.py", line 87, in manager_method - return getattr(self.get_queryset(), name)(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/query.py", line 661, in create - obj = self.model(**kwargs) - ^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/db/models/base.py", line 569, in __init__ - raise TypeError( -TypeError: ProjectLocation() got unexpected keyword arguments: 'distrct' -ERROR 2025-08-07 12:22:59,261 log Internal Server Error: /api/v1/projects/project/list/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/generics.py", line 203, in get - return self.list(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/mixins.py", line 43, in list - return self.get_paginated_response(serializer.data) - ^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 797, in data - ret = super().data - ^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 251, in data - self._data = self.to_representation(self.instance) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 716, in to_representation - self.child.to_representation(item) for item in iterable - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 540, in to_representation - ret[field.field_name] = field.to_representation(attribute) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 525, in to_representation - for field in fields: - ^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 386, in _readable_fields - for field in self.fields.values(): - ^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/functional.py", line 47, in __get__ - res = instance.__dict__[self.name] = self.func(instance) - ^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 374, in fields - for key, value in self.get_fields().items(): - ^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 1105, in get_fields - field_class, field_kwargs = self.build_field( - ^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 1251, in build_field - return self.build_unknown_field(field_name, model_class) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 1369, in build_unknown_field - raise ImproperlyConfigured( -django.core.exceptions.ImproperlyConfigured: Field name `location` is not valid for model `ProjectLocation` in `core.apps.projects.serializers.project_location.ProjectLocationListSerializer`. -ERROR 2025-08-07 12:23:00,420 log Internal Server Error: /api/v1/projects/project/list/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/generics.py", line 203, in get - return self.list(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/mixins.py", line 43, in list - return self.get_paginated_response(serializer.data) - ^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 797, in data - ret = super().data - ^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 251, in data - self._data = self.to_representation(self.instance) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 716, in to_representation - self.child.to_representation(item) for item in iterable - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 540, in to_representation - ret[field.field_name] = field.to_representation(attribute) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 525, in to_representation - for field in fields: - ^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 386, in _readable_fields - for field in self.fields.values(): - ^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/functional.py", line 47, in __get__ - res = instance.__dict__[self.name] = self.func(instance) - ^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 374, in fields - for key, value in self.get_fields().items(): - ^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 1105, in get_fields - field_class, field_kwargs = self.build_field( - ^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 1251, in build_field - return self.build_unknown_field(field_name, model_class) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 1369, in build_unknown_field - raise ImproperlyConfigured( -django.core.exceptions.ImproperlyConfigured: Field name `location` is not valid for model `ProjectLocation` in `core.apps.projects.serializers.project_location.ProjectLocationListSerializer`. -ERROR 2025-08-07 12:30:41,279 log Internal Server Error: /api/v1/projects/project/8b40e979-0274-48d3-92f0-007bd2e11d71/update/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/generics.py", line 233, in patch - return self.partial_update(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/mixins.py", line 82, in partial_update - return self.update(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/mixins.py", line 67, in update - serializer.is_valid(raise_exception=True) - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 225, in is_valid - self._validated_data = self.run_validation(self.initial_data) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 444, in run_validation - value = self.to_internal_value(data) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 501, in to_internal_value - validated_value = field.run_validation(primitive_value) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 447, in run_validation - value = self.validate(value) - ^^^^^^^^^^^^^^^^^^^^ - File "/code/core/apps/projects/serializers/project_location.py", line 15, in validate - region = Region.objects.filter(id=data['region_id']).first() - ~~~~^^^^^^^^^^^^^ -KeyError: 'region_id' -ERROR 2025-08-07 12:34:40,832 log Internal Server Error: /api/v1/projects/project/8b40e979-0274-48d3-92f0-007bd2e11d71/update/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/generics.py", line 233, in patch - return self.partial_update(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/mixins.py", line 82, in partial_update - return self.update(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/mixins.py", line 67, in update - serializer.is_valid(raise_exception=True) - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 225, in is_valid - self._validated_data = self.run_validation(self.initial_data) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 444, in run_validation - value = self.to_internal_value(data) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 501, in to_internal_value - validated_value = field.run_validation(primitive_value) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 447, in run_validation - value = self.validate(value) - ^^^^^^^^^^^^^^^^^^^^ - File "/code/core/apps/projects/serializers/project_location.py", line 15, in validate - region = Region.objects.filter(id=data['region_id']).first() - ~~~~^^^^^^^^^^^^^ -KeyError: 'region_id' -ERROR 2025-08-07 12:34:43,292 log Internal Server Error: /api/v1/projects/project/8b40e979-0274-48d3-92f0-007bd2e11d71/update/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/generics.py", line 233, in patch - return self.partial_update(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/mixins.py", line 82, in partial_update - return self.update(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/mixins.py", line 67, in update - serializer.is_valid(raise_exception=True) - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 225, in is_valid - self._validated_data = self.run_validation(self.initial_data) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 444, in run_validation - value = self.to_internal_value(data) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 501, in to_internal_value - validated_value = field.run_validation(primitive_value) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 447, in run_validation - value = self.validate(value) - ^^^^^^^^^^^^^^^^^^^^ - File "/code/core/apps/projects/serializers/project_location.py", line 15, in validate - region = Region.objects.filter(id=data['region_id']).first() - ~~~~^^^^^^^^^^^^^ -KeyError: 'region_id' diff --git a/resources/logs/django.log.2025-08-09 b/resources/logs/django.log.2025-08-09 deleted file mode 100644 index 1f37d02..0000000 --- a/resources/logs/django.log.2025-08-09 +++ /dev/null @@ -1,272 +0,0 @@ -WARNING 2025-08-09 11:54:16,155 log Forbidden: /api/v1/projects/project/list/ -WARNING 2025-08-09 11:54:24,194 log Not Found: / -WARNING 2025-08-09 11:54:24,296 log Not Found: /favicon.ico -ERROR 2025-08-09 12:13:13,318 log Internal Server Error: /api/v1/projects/project/8b40e979-0274-48d3-92f0-007bd2e11d71/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/rest_framework/fields.py", line 437, in get_attribute - return get_attribute(instance, self.source_attrs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/fields.py", line 104, in get_attribute - instance = getattr(instance, attr) - ^^^^^^^^^^^^^^^^^^^^^^^ -AttributeError: 'ManyRelatedManager' object has no attribute 'address' - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/generics.py", line 212, in get - return self.retrieve(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/mixins.py", line 56, in retrieve - return Response(serializer.data) - ^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 573, in data - ret = super().data - ^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 251, in data - self._data = self.to_representation(self.instance) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 540, in to_representation - ret[field.field_name] = field.to_representation(attribute) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 527, in to_representation - attribute = field.get_attribute(instance) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/fields.py", line 470, in get_attribute - raise type(exc)(msg) -AttributeError: Got AttributeError when attempting to get a value for field `address` on serializer `WhereHouseListSerializer`. -The serializer field might be named incorrectly and not match any attribute or key on the `ManyRelatedManager` instance. -Original exception text was: 'ManyRelatedManager' object has no attribute 'address'. -ERROR 2025-08-09 12:13:14,831 log Internal Server Error: /api/v1/projects/project/8b40e979-0274-48d3-92f0-007bd2e11d71/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/rest_framework/fields.py", line 437, in get_attribute - return get_attribute(instance, self.source_attrs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/fields.py", line 104, in get_attribute - instance = getattr(instance, attr) - ^^^^^^^^^^^^^^^^^^^^^^^ -AttributeError: 'ManyRelatedManager' object has no attribute 'address' - -During handling of the above exception, another exception occurred: - -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/generics.py", line 212, in get - return self.retrieve(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/mixins.py", line 56, in retrieve - return Response(serializer.data) - ^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 573, in data - ret = super().data - ^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 251, in data - self._data = self.to_representation(self.instance) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 540, in to_representation - ret[field.field_name] = field.to_representation(attribute) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 527, in to_representation - attribute = field.get_attribute(instance) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/fields.py", line 470, in get_attribute - raise type(exc)(msg) -AttributeError: Got AttributeError when attempting to get a value for field `address` on serializer `WhereHouseListSerializer`. -The serializer field might be named incorrectly and not match any attribute or key on the `ManyRelatedManager` instance. -Original exception text was: 'ManyRelatedManager' object has no attribute 'address'. -ERROR 2025-08-09 15:14:16,166 log Internal Server Error: /swagger/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 235, in _get_response_async - callback, callback_args, callback_kwargs = self.resolve_request(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 313, in resolve_request - resolver_match = resolver.resolve(request.path_info) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/urls/resolvers.py", line 666, in resolve - for pattern in self.url_patterns: - ^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/functional.py", line 47, in __get__ - res = instance.__dict__[self.name] = self.func(instance) - ^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/urls/resolvers.py", line 718, in url_patterns - patterns = getattr(self.urlconf_module, "urlpatterns", self.urlconf_module) - ^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/utils/functional.py", line 47, in __get__ - res = instance.__dict__[self.name] = self.func(instance) - ^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/urls/resolvers.py", line 711, in urlconf_module - return import_module(self.urlconf_name) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/importlib/__init__.py", line 90, in import_module - return _bootstrap._gcd_import(name[level:], package, level) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "", line 1387, in _gcd_import - File "", line 1360, in _find_and_load - File "", line 1331, in _find_and_load_unlocked - File "", line 935, in _load_unlocked - File "", line 999, in exec_module - File "", line 488, in _call_with_frames_removed - File "/code/config/urls.py", line 33, in - path('projects/', include('core.apps.projects.urls')), - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/urls/conf.py", line 39, in include - urlconf_module = import_module(urlconf_module) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/importlib/__init__.py", line 90, in import_module - return _bootstrap._gcd_import(name[level:], package, level) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "", line 1387, in _gcd_import - File "", line 1360, in _find_and_load - File "", line 1331, in _find_and_load_unlocked - File "", line 935, in _load_unlocked - File "", line 995, in exec_module - File "", line 1133, in get_code - File "", line 1063, in source_to_code - File "", line 488, in _call_with_frames_removed - File "/code/core/apps/projects/urls.py", line 39 - path('/delete/', estimate_views.) - ^ -SyntaxError: invalid syntax -WARNING 2025-08-09 15:14:16,990 log Not Found: /favicon.ico -ERROR 2025-08-09 15:35:41,275 log Internal Server Error: /api/v1/projects/project_estimate/list/ -Traceback (most recent call last): - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/exception.py", line 42, in inner - response = await get_response(request) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 489, in thread_handler - raise exc_info[1] - File "/usr/local/lib/python3.12/site-packages/django/core/handlers/base.py", line 253, in _get_response_async - response = await wrapped_callback( - ^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 439, in __call__ - ret = await asyncio.shield(exec_coro) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/concurrent/futures/thread.py", line 59, in run - result = self.fn(*self.args, **self.kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/asgiref/sync.py", line 493, in thread_handler - return func(*args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/decorators/csrf.py", line 65, in _view_wrapper - return view_func(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/django/views/generic/base.py", line 105, in view - return self.dispatch(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 515, in dispatch - response = self.handle_exception(exc) - ^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 475, in handle_exception - self.raise_uncaught_exception(exc) - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 486, in raise_uncaught_exception - raise exc - File "/usr/local/lib/python3.12/site-packages/rest_framework/views.py", line 512, in dispatch - response = handler(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/generics.py", line 203, in get - return self.list(request, *args, **kwargs) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/mixins.py", line 43, in list - return self.get_paginated_response(serializer.data) - ^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 797, in data - ret = super().data - ^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 251, in data - self._data = self.to_representation(self.instance) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 716, in to_representation - self.child.to_representation(item) for item in iterable - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 540, in to_representation - ret[field.field_name] = field.to_representation(attribute) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 716, in to_representation - self.child.to_representation(item) for item in iterable - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/serializers.py", line 540, in to_representation - ret[field.field_name] = field.to_representation(attribute) - ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ - File "/usr/local/lib/python3.12/site-packages/rest_framework/fields.py", line 1870, in to_representation - return method(value) - ^^^^^^^^^^^^^ - File "/code/core/apps/projects/serializers/project_estimate.py", line 20, in get_unity - 'name': obj.unity.name - ^^^^^^^^^^^^^^ -AttributeError: 'Unity' object has no attribute 'name'