Merge branch 'photograph' into 'master'

extended photologue photo to add an owner field

See merge request bde/photo21!7
This commit is contained in:
erdnaxe 2021-10-11 20:45:47 +02:00
commit 59d60ccf70
4 changed files with 86 additions and 16 deletions

View file

@ -8,7 +8,7 @@ msgid ""
msgstr "" msgstr ""
"Project-Id-Version: PACKAGE VERSION\n" "Project-Id-Version: PACKAGE VERSION\n"
"Report-Msgid-Bugs-To: \n" "Report-Msgid-Bugs-To: \n"
"POT-Creation-Date: 2021-10-11 11:48+0000\n" "POT-Creation-Date: 2021-10-11 18:38+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n" "Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n" "Language-Team: LANGUAGE <LL@li.org>\n"
@ -18,11 +18,7 @@ msgstr ""
"Content-Transfer-Encoding: 8bit\n" "Content-Transfer-Encoding: 8bit\n"
"Plural-Forms: nplurals=2; plural=(n > 1);\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n"
#: accounts/forms.py:9 #: photo21/forms.py:12
msgid "Email address"
msgstr "Adresse email"
#: accounts/forms.py:13
msgid "" msgid ""
"Please enter a valid email address ending with `@crans.org` or `@ens-paris-" "Please enter a valid email address ending with `@crans.org` or `@ens-paris-"
"saclay.fr`." "saclay.fr`."
@ -30,23 +26,23 @@ msgstr ""
"Veuillez entrer une adresse email valide finissant par `@crans.org` ou `@ens-" "Veuillez entrer une adresse email valide finissant par `@crans.org` ou `@ens-"
"paris-saclay.fr`." "paris-saclay.fr`."
#: accounts/forms.py:25 #: photo21/forms.py:23
msgid "Must end with `@crans.org` or `@ens-paris-saclay.fr`." msgid "Must end with `@crans.org` or `@ens-paris-saclay.fr`."
msgstr "Doit finir par `@crans.org` ou `@ens-paris-saclay.fr`." msgstr "Doit finir par `@crans.org` ou `@ens-paris-saclay.fr`."
#: photo21/settings.py:144 #: photo21/settings.py:143
msgid "German" msgid "German"
msgstr "" msgstr ""
#: photo21/settings.py:145 #: photo21/settings.py:144
msgid "English" msgid "English"
msgstr "" msgstr ""
#: photo21/settings.py:146 #: photo21/settings.py:145
msgid "Spanish" msgid "Spanish"
msgstr "" msgstr ""
#: photo21/settings.py:147 #: photo21/settings.py:146
msgid "French" msgid "French"
msgstr "" msgstr ""
@ -178,6 +174,10 @@ msgstr "Inscription"
msgid "Connected as" msgid "Connected as"
msgstr "Connecté en tant que" msgstr "Connecté en tant que"
#: photologue_custom/models.py:39
msgid "owner"
msgstr "propriétaire"
#: photologue_custom/templates/photologue/gallery_archive.html:4 #: photologue_custom/templates/photologue/gallery_archive.html:4
#: photologue_custom/templates/photologue/gallery_archive.html:9 #: photologue_custom/templates/photologue/gallery_archive.html:9
msgid "Latest photo galleries" msgid "Latest photo galleries"

View file

@ -1,8 +1,9 @@
from django.contrib import admin from django.contrib import admin
from photologue.admin import GalleryAdmin as GalleryAdminDefault from photologue.admin import GalleryAdmin as GalleryAdminDefault
from photologue.models import Gallery from photologue.admin import PhotoAdmin as PhotoAdminDefault
from photologue.models import Gallery, Photo
from .models import GalleryExtended from .models import GalleryExtended, PhotoExtended
class GalleryExtendedInline(admin.StackedInline): class GalleryExtendedInline(admin.StackedInline):
@ -18,5 +19,20 @@ class GalleryAdmin(GalleryAdminDefault):
inlines = [GalleryExtendedInline, ] inlines = [GalleryExtendedInline, ]
class PhotoExtendedInline(admin.StackedInline):
model = PhotoExtended
can_delete = True
class PhotoAdmin(PhotoAdminDefault):
"""
Define our new one-to-one model as an inline of Photologue's Photo
model.
"""
inlines = [PhotoExtendedInline, ]
admin.site.unregister(Gallery) admin.site.unregister(Gallery)
admin.site.unregister(Photo)
admin.site.register(Gallery, GalleryAdmin) admin.site.register(Gallery, GalleryAdmin)
admin.site.register(Photo, PhotoAdmin)

View file

@ -0,0 +1,29 @@
# Generated by Django 2.2.24 on 2021-10-11 18:40
from django.conf import settings
from django.db import migrations, models
import django.db.models.deletion
class Migration(migrations.Migration):
dependencies = [
('photologue', '0011_auto_20190223_2138'),
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
('photologue_custom', '0001_initial'),
]
operations = [
migrations.CreateModel(
name='PhotoExtended',
fields=[
('id', models.AutoField(auto_created=True, primary_key=True, serialize=False, verbose_name='ID')),
('owner', models.ForeignKey(on_delete=django.db.models.deletion.CASCADE, to=settings.AUTH_USER_MODEL, verbose_name='owner')),
('photo', models.OneToOneField(on_delete='cascade', related_name='extented', to='photologue.Photo')),
],
options={
'verbose_name': 'Extra fields',
'verbose_name_plural': 'Extra fields',
},
),
]

View file

@ -1,6 +1,8 @@
from django.db import models from django.db import models
from django.conf import settings
from taggit.managers import TaggableManager from taggit.managers import TaggableManager
from photologue.models import Gallery from photologue.models import Gallery, Photo
from django.utils.translation import gettext_lazy as _
class GalleryExtended(models.Model): class GalleryExtended(models.Model):
@ -15,8 +17,31 @@ class GalleryExtended(models.Model):
tags = TaggableManager(blank=True) tags = TaggableManager(blank=True)
class Meta: class Meta:
verbose_name = u'Extra fields' verbose_name = 'Extra fields'
verbose_name_plural = u'Extra fields' verbose_name_plural = 'Extra fields'
def __str__(self): def __str__(self):
return self.gallery.title return self.gallery.title
class PhotoExtended(models.Model):
# Extend Photologue Photo model.
photo = models.OneToOneField(
Photo,
related_name='extented',
on_delete='cascade'
)
# Add a owner field to PhotoExtended
owner = models.ForeignKey(
settings.AUTH_USER_MODEL,
on_delete=models.CASCADE,
verbose_name=_("owner"),
)
class Meta:
verbose_name = 'Extra fields'
verbose_name_plural = 'Extra fields'
def __str__(self):
return str(self.photo)