Stabilize the magazine repository app

This commit is contained in:
2025-12-08 22:48:14 +01:00
parent 5e6366e10c
commit 7f456890dd
6 changed files with 261 additions and 48 deletions

View File

@@ -0,0 +1,65 @@
# Generated by Django 6.0 on 2025-12-08 17:47
import django.db.models.deletion
import ram.utils
from django.db import migrations, models
class Migration(migrations.Migration):
dependencies = [
("bookshelf", "0025_magazine_magazineissue"),
(
"repository",
"0003_alter_bookdocument_file_alter_catalogdocument_file_and_more",
),
]
operations = [
migrations.CreateModel(
name="MagazineIssueDocument",
fields=[
(
"id",
models.BigAutoField(
auto_created=True,
primary_key=True,
serialize=False,
verbose_name="ID",
),
),
("description", models.CharField(blank=True, max_length=128)),
(
"file",
models.FileField(
storage=ram.utils.DeduplicatedStorage, upload_to="files/"
),
),
("creation_time", models.DateTimeField(auto_now_add=True)),
("updated_time", models.DateTimeField(auto_now=True)),
(
"private",
models.BooleanField(
default=False,
help_text="Document will be visible only to logged users",
),
),
(
"issue",
models.ForeignKey(
on_delete=django.db.models.deletion.CASCADE,
related_name="document",
to="bookshelf.magazineissue",
),
),
],
options={
"verbose_name_plural": "Magazines documents",
"constraints": [
models.UniqueConstraint(
fields=("issue", "file"), name="unique_issue_file"
)
],
},
),
]

View File

@@ -5,7 +5,7 @@ from tinymce import models as tinymce
from ram.models import PrivateDocument
from metadata.models import Decoder, Shop, Tag
from roster.models import RollingStock
from bookshelf.models import Book, Catalog, Issue
from bookshelf.models import Book, Catalog, MagazineIssue
class GenericDocument(PrivateDocument):
@@ -78,7 +78,7 @@ class CatalogDocument(PrivateDocument):
class MagazineIssueDocument(PrivateDocument):
issue = models.ForeignKey(
Issue, on_delete=models.CASCADE, related_name="document"
MagazineIssue, on_delete=models.CASCADE, related_name="document"
)
class Meta: