mirror of
https://github.com/pacnpal/thrillwiki_django_no_react.git
synced 2025-12-20 10:11:09 -05:00
Fixes a `TypeError: 'NoneType' object is not callable` in `thrillwiki/views.py` during `Park.objects.count()` by ensuring the Park model is properly imported and accessible. Replit-Commit-Author: Agent Replit-Commit-Session-Id: eff39de1-3afa-446d-a965-acaf61837fc7 Replit-Commit-Checkpoint-Type: full_checkpoint Replit-Commit-Screenshot-Url: https://storage.googleapis.com/screenshot-production-us-central1/d6d61dac-164d-45dd-929f-7dcdfd771b64/eff39de1-3afa-446d-a965-acaf61837fc7/NsPV9U7
135 lines
6.1 KiB
Plaintext
135 lines
6.1 KiB
Plaintext
Environment:
|
|
|
|
|
|
Request Method: GET
|
|
Request URL: http://d6d61dac-164d-45dd-929f-7dcdfd771b64-00-1bpe9dzxxnshv.worf.replit.dev/
|
|
|
|
Django Version: 5.2.6
|
|
Python Version: 3.13.5
|
|
Installed Applications:
|
|
['django.contrib.admin',
|
|
'django.contrib.auth',
|
|
'django.contrib.contenttypes',
|
|
'django.contrib.sessions',
|
|
'django.contrib.messages',
|
|
'django.contrib.staticfiles',
|
|
'django.contrib.sites',
|
|
'django_cloudflareimages_toolkit',
|
|
'rest_framework',
|
|
'rest_framework.authtoken',
|
|
'rest_framework_simplejwt',
|
|
'rest_framework_simplejwt.token_blacklist',
|
|
'dj_rest_auth',
|
|
'dj_rest_auth.registration',
|
|
'drf_spectacular',
|
|
'corsheaders',
|
|
'pghistory',
|
|
'pgtrigger',
|
|
'allauth',
|
|
'allauth.account',
|
|
'allauth.socialaccount',
|
|
'allauth.socialaccount.providers.google',
|
|
'allauth.socialaccount.providers.discord',
|
|
'django_cleanup',
|
|
'django_filters',
|
|
'django_htmx',
|
|
'whitenoise',
|
|
'django_tailwind_cli',
|
|
'autocomplete',
|
|
'health_check',
|
|
'health_check.db',
|
|
'health_check.cache',
|
|
'health_check.storage',
|
|
'health_check.contrib.migrations',
|
|
'health_check.contrib.redis',
|
|
'django_celery_beat',
|
|
'django_celery_results',
|
|
'django_extensions',
|
|
'apps.core',
|
|
'apps.accounts',
|
|
'apps.parks',
|
|
'apps.rides',
|
|
'api',
|
|
'django_forwardemail',
|
|
'apps.moderation',
|
|
'nplusone.ext.django',
|
|
'widget_tweaks']
|
|
Installed Middleware:
|
|
['django.middleware.cache.UpdateCacheMiddleware',
|
|
'core.middleware.request_logging.RequestLoggingMiddleware',
|
|
'core.middleware.nextjs.APIResponseMiddleware',
|
|
'core.middleware.performance_middleware.QueryCountMiddleware',
|
|
'core.middleware.performance_middleware.PerformanceMiddleware',
|
|
'nplusone.ext.django.NPlusOneMiddleware',
|
|
'corsheaders.middleware.CorsMiddleware',
|
|
'django.middleware.security.SecurityMiddleware',
|
|
'whitenoise.middleware.WhiteNoiseMiddleware',
|
|
'django.contrib.sessions.middleware.SessionMiddleware',
|
|
'django.middleware.common.CommonMiddleware',
|
|
'django.middleware.csrf.CsrfViewMiddleware',
|
|
'django.contrib.auth.middleware.AuthenticationMiddleware',
|
|
'django.contrib.messages.middleware.MessageMiddleware',
|
|
'django.middleware.clickjacking.XFrameOptionsMiddleware',
|
|
'apps.core.middleware.analytics.PgHistoryContextMiddleware',
|
|
'allauth.account.middleware.AccountMiddleware',
|
|
'django.middleware.cache.FetchFromCacheMiddleware',
|
|
'django_htmx.middleware.HtmxMiddleware']
|
|
|
|
|
|
|
|
Traceback (most recent call last):
|
|
File "/home/runner/workspace/backend/.venv/lib/python3.13/site-packages/django/core/handlers/exception.py", line 55, in inner
|
|
response = get_response(request)
|
|
^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/runner/workspace/backend/.venv/lib/python3.13/site-packages/django/core/handlers/base.py", line 197, in _get_response
|
|
response = wrapped_callback(request, *callback_args, **callback_kwargs)
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/runner/workspace/backend/.venv/lib/python3.13/site-packages/django/views/generic/base.py", line 105, in view
|
|
return self.dispatch(request, *args, **kwargs)
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/runner/workspace/backend/.venv/lib/python3.13/site-packages/django/views/generic/base.py", line 144, in dispatch
|
|
return handler(request, *args, **kwargs)
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/runner/workspace/backend/.venv/lib/python3.13/site-packages/django/views/generic/base.py", line 228, in get
|
|
context = self.get_context_data(**kwargs)
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/runner/workspace/backend/thrillwiki/views.py", line 29, in get_context_data
|
|
"total_parks": Park.objects.count(),
|
|
^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/runner/workspace/backend/.venv/lib/python3.13/site-packages/django/db/models/manager.py", line 87, in manager_method
|
|
return getattr(self.get_queryset(), name)(*args, **kwargs)
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/runner/workspace/backend/.venv/lib/python3.13/site-packages/django/db/models/query.py", line 604, in count
|
|
return self.query.get_count(using=self.db)
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/runner/workspace/backend/.venv/lib/python3.13/site-packages/django/db/models/sql/query.py", line 644, in get_count
|
|
return obj.get_aggregation(using, {"__count": Count("*")})["__count"]
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/runner/workspace/backend/.venv/lib/python3.13/site-packages/django/db/models/sql/query.py", line 626, in get_aggregation
|
|
result = compiler.execute_sql(SINGLE)
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/runner/workspace/backend/.venv/lib/python3.13/site-packages/django/db/models/sql/compiler.py", line 1623, in execute_sql
|
|
cursor.execute(sql, params)
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/runner/workspace/backend/.venv/lib/python3.13/site-packages/django/db/backends/utils.py", line 122, in execute
|
|
return super().execute(sql, params)
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/runner/workspace/backend/.venv/lib/python3.13/site-packages/django/db/backends/utils.py", line 79, in execute
|
|
return self._execute_with_wrappers(
|
|
|
|
File "/home/runner/workspace/backend/.venv/lib/python3.13/site-packages/django/db/backends/utils.py", line 92, in _execute_with_wrappers
|
|
return executor(sql, params, many, context)
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/runner/workspace/backend/.venv/lib/python3.13/site-packages/pghistory/runtime.py", line 96, in _inject_history_context
|
|
if _can_inject_variable(context["cursor"], sql):
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/runner/workspace/backend/.venv/lib/python3.13/site-packages/pghistory/runtime.py", line 77, in _can_inject_variable
|
|
and not _is_transaction_errored(cursor)
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
File "/home/runner/workspace/backend/.venv/lib/python3.13/site-packages/pghistory/runtime.py", line 51, in _is_transaction_errored
|
|
cursor.connection.get_transaction_status()
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
Exception Type: AttributeError at /
|
|
Exception Value: 'sqlite3.Connection' object has no attribute 'get_transaction_status'
|