From 2ae5f5205ec19dbc1574b6136da9479e080c6ba2 Mon Sep 17 00:00:00 2001 From: Hasan-Ahmad Date: Thu, 11 Oct 2018 16:14:34 +0100 Subject: Added snake facts api --- api/models.py | 13 +++++++++++++ 1 file changed, 13 insertions(+) (limited to 'api/models.py') diff --git a/api/models.py b/api/models.py index e5ec7992..32f978d4 100644 --- a/api/models.py +++ b/api/models.py @@ -77,6 +77,19 @@ class SnakeName(ModelReprMixin, models.Model): return f"{self.name} ({self.scientific})" +class SnakeFact(ModelReprMixin, models.Model): + """A snake fact used by the bot's snake cog.""" + + fact = models.CharField( + primary_key=True, + max_length=200, + help_text="A fact about snakes." + ) + + def __str__(self): + return f"{self.fact}" + + class Role(ModelReprMixin, models.Model): """A role on our Discord server.""" -- cgit v1.2.3 From 833cc690736fc301303299b41e9e874b8e430983 Mon Sep 17 00:00:00 2001 From: Hasan-Ahmad Date: Sat, 13 Oct 2018 15:33:15 +0100 Subject: fixed ordering --- api/admin.py | 5 +++-- api/models.py | 26 +++++++++++++------------- api/serializers.py | 15 ++++++++------- api/urls.py | 8 ++++---- 4 files changed, 28 insertions(+), 26 deletions(-) (limited to 'api/models.py') diff --git a/api/admin.py b/api/admin.py index 1d152b9e..7d7cf6fb 100644 --- a/api/admin.py +++ b/api/admin.py @@ -3,7 +3,8 @@ from django.contrib import admin from .models import ( DocumentationLink, Member, OffTopicChannelName, Role, - SnakeName, Tag, SnakeFact, + SnakeFact, SnakeName, + Tag, ) @@ -11,6 +12,6 @@ admin.site.register(DocumentationLink) admin.site.register(Member) admin.site.register(OffTopicChannelName) admin.site.register(Role) +admin.site.register(SnakeFact) admin.site.register(SnakeName) admin.site.register(Tag) -admin.site.register(SnakeFact) diff --git a/api/models.py b/api/models.py index 32f978d4..c37417eb 100644 --- a/api/models.py +++ b/api/models.py @@ -60,6 +60,19 @@ class OffTopicChannelName(ModelReprMixin, models.Model): return self.name +class SnakeFact(ModelReprMixin, models.Model): + """A snake fact used by the bot's snake cog.""" + + fact = models.CharField( + primary_key=True, + max_length=200, + help_text="A fact about snakes." + ) + + def __str__(self): + return f"{self.fact}" + + class SnakeName(ModelReprMixin, models.Model): """A snake name used by the bot's snake cog.""" @@ -77,19 +90,6 @@ class SnakeName(ModelReprMixin, models.Model): return f"{self.name} ({self.scientific})" -class SnakeFact(ModelReprMixin, models.Model): - """A snake fact used by the bot's snake cog.""" - - fact = models.CharField( - primary_key=True, - max_length=200, - help_text="A fact about snakes." - ) - - def __str__(self): - return f"{self.fact}" - - class Role(ModelReprMixin, models.Model): """A role on our Discord server.""" diff --git a/api/serializers.py b/api/serializers.py index 900fa8b8..a4482c30 100644 --- a/api/serializers.py +++ b/api/serializers.py @@ -4,7 +4,8 @@ from rest_framework_bulk import BulkSerializerMixin from .models import ( DocumentationLink, Member, OffTopicChannelName, Role, - SnakeName, Tag, SnakeFact, + SnakeFact, SnakeName, + Tag, ) @@ -23,18 +24,18 @@ class OffTopicChannelNameSerializer(ModelSerializer): return obj.name -class SnakeNameSerializer(ModelSerializer): - class Meta: - model = SnakeName - fields = ('name', 'scientific') - - class SnakeFactSerializer(ModelSerializer): class Meta: model = SnakeFact fields = ('fact',) +class SnakeNameSerializer(ModelSerializer): + class Meta: + model = SnakeName + fields = ('name', 'scientific') + + class RoleSerializer(ModelSerializer): class Meta: model = Role diff --git a/api/urls.py b/api/urls.py index 38508d38..5cc1b346 100644 --- a/api/urls.py +++ b/api/urls.py @@ -24,6 +24,10 @@ bot_router.register( 'members', MemberViewSet ) +bot_router.register( + 'snake-facts', + SnakeFactViewSet, +) bot_router.register( 'snake-names', SnakeNameViewSet, @@ -33,10 +37,6 @@ bot_router.register( 'tags', TagViewSet, ) -bot_router.register( - 'snake-fact', - SnakeFactViewSet, -) app_name = 'api' urlpatterns = ( -- cgit v1.2.3 From e0298cdbd1f1a4fdd1963c93ea271cb52fb5c923 Mon Sep 17 00:00:00 2001 From: Hasan-Ahmad Date: Mon, 15 Oct 2018 21:45:21 +0100 Subject: Fixed import order and linting --- api/admin.py | 2 +- api/models.py | 2 +- api/serializers.py | 4 ++-- api/urls.py | 4 ++-- api/viewsets.py | 7 +++---- 5 files changed, 9 insertions(+), 10 deletions(-) (limited to 'api/models.py') diff --git a/api/admin.py b/api/admin.py index 7d7cf6fb..1ce8d767 100644 --- a/api/admin.py +++ b/api/admin.py @@ -4,7 +4,7 @@ from .models import ( DocumentationLink, Member, OffTopicChannelName, Role, SnakeFact, SnakeName, - Tag, + Tag ) diff --git a/api/models.py b/api/models.py index c37417eb..7c9b63f5 100644 --- a/api/models.py +++ b/api/models.py @@ -70,7 +70,7 @@ class SnakeFact(ModelReprMixin, models.Model): ) def __str__(self): - return f"{self.fact}" + return self.fact class SnakeName(ModelReprMixin, models.Model): diff --git a/api/serializers.py b/api/serializers.py index a4482c30..a0f823e9 100644 --- a/api/serializers.py +++ b/api/serializers.py @@ -4,8 +4,8 @@ from rest_framework_bulk import BulkSerializerMixin from .models import ( DocumentationLink, Member, OffTopicChannelName, Role, - SnakeFact, SnakeName, - Tag, + SnakeFact, SnakeName, + Tag, ) diff --git a/api/urls.py b/api/urls.py index 5cc1b346..40883c64 100644 --- a/api/urls.py +++ b/api/urls.py @@ -4,8 +4,8 @@ from rest_framework.routers import DefaultRouter from .views import HealthcheckView from .viewsets import ( DocumentationLinkViewSet, MemberViewSet, - OffTopicChannelNameViewSet, SnakeNameViewSet, - TagViewSet, SnakeFactViewSet + OffTopicChannelNameViewSet, SnakeFactViewSet, SnakeNameViewSet, + TagViewSet ) diff --git a/api/viewsets.py b/api/viewsets.py index 4e36aa8e..9edc2b69 100644 --- a/api/viewsets.py +++ b/api/viewsets.py @@ -11,13 +11,12 @@ from rest_framework_bulk import BulkCreateModelMixin from .models import ( DocumentationLink, Member, - OffTopicChannelName, SnakeName, - SnakeFact, Tag, + OffTopicChannelName, SnakeFact, SnakeName, Tag ) from .serializers import ( DocumentationLinkSerializer, MemberSerializer, - OffTopicChannelNameSerializer, SnakeNameSerializer, - SnakeFactSerializer, TagSerializer, + OffTopicChannelNameSerializer, SnakeFactSerializer, SnakeNameSerializer, + TagSerializer ) -- cgit v1.2.3