chnage image field to image_url in establishments

This commit is contained in:
Dmitriy Kuzmenko 2019-09-19 17:18:08 +03:00
parent 20fe40010c
commit 2164e30aef
11 changed files with 66 additions and 5 deletions

View File

@ -148,6 +148,7 @@ class ChangeEmailSerializer(serializers.ModelSerializer):
class ConfirmEmailSerializer(serializers.ModelSerializer):
"""Confirm user email serializer"""
x = serializers.CharField(default=None)
class Meta:
"""Meta class"""
@ -161,12 +162,14 @@ class ConfirmEmailSerializer(serializers.ModelSerializer):
email_confirmed = self.instance.email_confirmed
if email_confirmed:
raise utils_exceptions.EmailConfirmedError()
return attrs
def update(self, instance, validated_data):
"""
Override update method
"""
# Send verification link on user email for change email address
if settings.USE_CELERY:
tasks.confirm_new_email_address.delay(instance.id)

View File

@ -54,6 +54,7 @@ class CommentInline(GenericTabularInline):
@admin.register(models.Establishment)
class EstablishmentAdmin(admin.ModelAdmin):
"""Establishment admin."""
list_display = ['id', '__str__', 'image_tag', ]
inlines = [
AwardInline, MetaDataContentInline,
ContactPhoneInline, ContactEmailInline,

View File

@ -0,0 +1,17 @@
# Generated by Django 2.2.4 on 2019-09-19 11:17
from django.db import migrations
class Migration(migrations.Migration):
dependencies = [
('establishment', '0020_merge_20190917_1415'),
]
operations = [
migrations.RemoveField(
model_name='establishment',
name='image',
),
]

View File

@ -0,0 +1,18 @@
# Generated by Django 2.2.4 on 2019-09-19 11:19
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
('establishment', '0021_remove_establishment_image'),
]
operations = [
migrations.AddField(
model_name='establishment',
name='image_url',
field=models.URLField(blank=True, default=None, null=True, verbose_name='Image URL path'),
),
]

View File

@ -14,7 +14,7 @@ from phonenumber_field.modelfields import PhoneNumberField
from location.models import Address
from collection.models import Collection
from review.models import Review
from utils.models import (ProjectBaseMixin, ImageMixin, TJSONField,
from utils.models import (ProjectBaseMixin, ImageMixin, TJSONField, URLImageMixin,
TranslatedFieldsMixin, BaseAttributes)
@ -225,7 +225,7 @@ class EstablishmentQuerySet(models.QuerySet):
return self.filter(address__coordinates__distance_lte=(center, Distance(**kwargs)))
class Establishment(ProjectBaseMixin, ImageMixin, TranslatedFieldsMixin):
class Establishment(ProjectBaseMixin, URLImageMixin, TranslatedFieldsMixin):
"""Establishment model."""
name = models.CharField(_('name'), max_length=255, default='')

View File

@ -30,7 +30,8 @@ class EstablishmentListCreateSerializer(EstablishmentBaseSerializer):
'toque_number',
'type_id',
'type',
'socials'
'socials',
'image_url'
]

View File

@ -20,4 +20,5 @@ urlpatterns = [
path('phones/<int:pk>/', views.PhonesRUDView.as_view(), name='phones-rud'),
path('emails/', views.EmailListCreateView.as_view(), name='emails'),
path('emails/<int:pk>/', views.EmailRUDView.as_view(), name='emails-rud'),
]

View File

@ -113,3 +113,4 @@ class AddressSerializer(serializers.ModelSerializer):
setattr(instance, 'geo_lat', float(0))
setattr(instance, 'geo_lon', float(0))
return super().to_representation(instance)

View File

@ -1 +1 @@
from search_indexes.signals import update_document
from search_indexes.signals import update_document

View File

@ -24,7 +24,7 @@ def update_document(sender, **kwargs):
for establishment in establishments:
registry.update(establishment)
if model_name == 'Address':
if model_name == 'address':
establishments = Establishment.objects.filter(
address=instance)
for establishment in establishments:

View File

@ -181,6 +181,25 @@ class SVGImageMixin(models.Model):
abstract = True
class URLImageMixin(models.Model):
"""URl for image and special methods."""
image_url = models.URLField(verbose_name=_('Image URL path'),
blank=True, null=True, default=None)
class Meta:
abstract = True
def image_tag(self):
if self.image_url:
return mark_safe(
f'<a href="{self.image_url}"><img src="{self.image_url}" height="50"/>')
else:
return None
image_tag.short_description = _('Image')
image_tag.allow_tags = True
class PlatformMixin(models.Model):
"""Platforms"""