mirror of
https://github.com/pacnpal/thrillwiki_django_no_react.git
synced 2025-12-30 03:07:00 -05:00
feat: Implement MFA authentication, add ride statistics model, and update various services, APIs, and tests across the application.
This commit is contained in:
@@ -1,13 +1,15 @@
|
||||
from django.contrib import admin
|
||||
from django.db.models import Count
|
||||
from django.utils.html import format_html
|
||||
|
||||
from apps.core.admin import (
|
||||
BaseModelAdmin,
|
||||
ExportActionMixin,
|
||||
QueryOptimizationMixin,
|
||||
TimestampFieldsMixin,
|
||||
)
|
||||
from .models import UserList, ListItem
|
||||
|
||||
from .models import ListItem, UserList
|
||||
|
||||
|
||||
class ListItemInline(admin.TabularInline):
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
from django.apps import AppConfig
|
||||
|
||||
|
||||
class ListsConfig(AppConfig):
|
||||
default_auto_field = "django.db.models.BigAutoField"
|
||||
name = "apps.lists"
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
# Generated by Django 5.1.6 on 2025-12-26 14:13
|
||||
|
||||
import apps.core.choices.fields
|
||||
import django.db.models.deletion
|
||||
import pgtrigger.compiler
|
||||
import pgtrigger.migrations
|
||||
from django.conf import settings
|
||||
from django.db import migrations, models
|
||||
|
||||
import apps.core.choices.fields
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
from django.db import models
|
||||
import pghistory
|
||||
from django.conf import settings
|
||||
from django.contrib.contenttypes.fields import GenericForeignKey
|
||||
from django.contrib.contenttypes.models import ContentType
|
||||
from apps.core.history import TrackedModel
|
||||
from django.db import models
|
||||
|
||||
from apps.core.choices import RichChoiceField
|
||||
import pghistory
|
||||
from apps.core.history import TrackedModel
|
||||
|
||||
|
||||
@pghistory.track()
|
||||
class UserList(TrackedModel):
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
from rest_framework import serializers
|
||||
from .models import UserList, ListItem
|
||||
|
||||
from apps.accounts.serializers import UserSerializer
|
||||
|
||||
from .models import ListItem, UserList
|
||||
|
||||
|
||||
class ListItemSerializer(serializers.ModelSerializer):
|
||||
class Meta:
|
||||
model = ListItem
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
from django.urls import path, include
|
||||
from django.urls import include, path
|
||||
from rest_framework.routers import DefaultRouter
|
||||
from .views import UserListViewSet, ListItemViewSet
|
||||
|
||||
from .views import ListItemViewSet, UserListViewSet
|
||||
|
||||
router = DefaultRouter()
|
||||
router.register(r"lists", UserListViewSet, basename="list")
|
||||
|
||||
@@ -1,9 +1,12 @@
|
||||
from django.db.models import Q
|
||||
from rest_framework import viewsets, permissions
|
||||
from .models import UserList, ListItem
|
||||
from .serializers import UserListSerializer, ListItemSerializer
|
||||
from rest_framework import permissions, viewsets
|
||||
|
||||
from apps.core.permissions import IsOwnerOrReadOnly
|
||||
|
||||
from .models import ListItem, UserList
|
||||
from .serializers import ListItemSerializer, UserListSerializer
|
||||
|
||||
|
||||
class UserListViewSet(viewsets.ModelViewSet):
|
||||
serializer_class = UserListSerializer
|
||||
permission_classes = [permissions.IsAuthenticatedOrReadOnly, IsOwnerOrReadOnly]
|
||||
|
||||
Reference in New Issue
Block a user