added new application partner, added new model Partner
This commit is contained in:
parent
6e12612192
commit
1de7a84d56
|
|
@ -1 +1,8 @@
|
|||
# Register your models here.
|
||||
from django.contrib import admin
|
||||
|
||||
from partner import models
|
||||
|
||||
|
||||
@admin.register(models.Partner)
|
||||
class PartnerModelAdmin(admin.ModelAdmin):
|
||||
"""Model admin for Partner model."""
|
||||
|
|
|
|||
31
apps/partner/migrations/0001_initial.py
Normal file
31
apps/partner/migrations/0001_initial.py
Normal file
|
|
@ -0,0 +1,31 @@
|
|||
# Generated by Django 2.2.4 on 2019-08-23 13:50
|
||||
|
||||
from django.db import migrations, models
|
||||
import django.utils.timezone
|
||||
import easy_thumbnails.fields
|
||||
import utils.methods
|
||||
|
||||
|
||||
class Migration(migrations.Migration):
|
||||
|
||||
initial = True
|
||||
|
||||
dependencies = [
|
||||
]
|
||||
|
||||
operations = [
|
||||
migrations.CreateModel(
|
||||
name='Partner',
|
||||
fields=[
|
||||
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
|
||||
('created', models.DateTimeField(default=django.utils.timezone.now, editable=False, verbose_name='Date created')),
|
||||
('modified', models.DateTimeField(auto_now=True, verbose_name='Date updated')),
|
||||
('image', easy_thumbnails.fields.ThumbnailerImageField(blank=True, default=None, null=True, upload_to=utils.methods.image_path, verbose_name='Image')),
|
||||
('url', models.URLField(verbose_name='Partner URL')),
|
||||
],
|
||||
options={
|
||||
'verbose_name': 'partner',
|
||||
'verbose_name_plural': 'partners',
|
||||
},
|
||||
),
|
||||
]
|
||||
|
|
@ -7,3 +7,10 @@ from utils.models import ImageMixin, ProjectBaseMixin
|
|||
class Partner(ProjectBaseMixin, ImageMixin):
|
||||
"""Partner model."""
|
||||
url = models.URLField(verbose_name=_('Partner URL'))
|
||||
|
||||
class Meta:
|
||||
verbose_name = _('partner')
|
||||
verbose_name_plural = _('partners')
|
||||
|
||||
def __str__(self):
|
||||
return f'{self.url}'
|
||||
|
|
|
|||
|
|
@ -1 +1,15 @@
|
|||
# Mixin
|
||||
from rest_framework import serializers
|
||||
|
||||
from partner import models
|
||||
|
||||
|
||||
# Serializers
|
||||
class PartnerSerializer(serializers.ModelSerializer):
|
||||
"""Serializer for model Partner"""
|
||||
class Meta:
|
||||
"""Meta class"""
|
||||
model = models.Partner
|
||||
fields = (
|
||||
'id',
|
||||
'url'
|
||||
)
|
||||
|
|
|
|||
|
|
@ -1,4 +1,11 @@
|
|||
"""Partner app common urlconf."""
|
||||
from django.urls import path
|
||||
|
||||
from partner.views import common as views
|
||||
|
||||
app_name = 'partner'
|
||||
|
||||
urlpatterns = [
|
||||
path('list/', views.PartnerListView.as_view(),
|
||||
name='partner_list')
|
||||
]
|
||||
|
|
|
|||
|
|
@ -0,0 +1,18 @@
|
|||
from rest_framework import generics
|
||||
from rest_framework import permissions
|
||||
|
||||
from partner import models
|
||||
from partner.serializers import common as serializers
|
||||
|
||||
|
||||
# Mixins
|
||||
class PartnerViewMixin(generics.GenericAPIView):
|
||||
"""View mixin for Partner views"""
|
||||
queryset = models.Partner.objects.all()
|
||||
|
||||
|
||||
# Views
|
||||
class PartnerListView(PartnerViewMixin, generics.ListAPIView):
|
||||
"""List Partner view"""
|
||||
permission_classes = (permissions.AllowAny, )
|
||||
serializer_class = serializers.PartnerSerializer
|
||||
|
|
@ -59,6 +59,7 @@ PROJECT_APPS = [
|
|||
'news.apps.NewsConfig',
|
||||
'translation.apps.TranslationConfig',
|
||||
'collection.apps.CollectionConfig',
|
||||
'partner.apps.PartnerConfig'
|
||||
]
|
||||
|
||||
EXTERNAL_APPS = [
|
||||
|
|
|
|||
|
|
@ -20,5 +20,6 @@ app_name = 'web'
|
|||
urlpatterns = [
|
||||
path('account/', include('account.urls.web')),
|
||||
path('news/', include('news.urls.web')),
|
||||
path('collection/', include('collection.urls.web'))
|
||||
path('collection/', include('collection.urls.web')),
|
||||
path('partner/', include('partner.urls.web')),
|
||||
]
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user