Skip to content

Commit d9c4f81

Browse files
committed
feat: SponsorTag에 번역 및 히스토리 추가
1 parent db03a5c commit d9c4f81

File tree

3 files changed

+126
-2
lines changed

3 files changed

+126
-2
lines changed

app/event/sponsor/apps.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,8 +9,9 @@ class SponsorConfig(AppConfig):
99
def ready(self):
1010
importlib.import_module("event.sponsor.translation")
1111

12-
from event.sponsor.models import Sponsor, SponsorTier
12+
from event.sponsor.models import Sponsor, SponsorTag, SponsorTier
1313
from simple_history import register
1414

1515
register(SponsorTier)
16+
register(SponsorTag)
1617
register(Sponsor)
Lines changed: 118 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,118 @@
1+
# Generated by Django 5.2 on 2025-06-20 08:16
2+
3+
import uuid
4+
5+
import django.db.models.deletion
6+
import simple_history.models
7+
from django.conf import settings
8+
from django.db import migrations, models
9+
10+
11+
class Migration(migrations.Migration):
12+
dependencies = [
13+
("event", "0003_alter_event_name_alter_event_name_en_and_more"),
14+
("sponsor", "0008_sponsortag_sponsortagrelation_sponsor_tags_and_more"),
15+
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
16+
]
17+
18+
operations = [
19+
migrations.CreateModel(
20+
name="HistoricalSponsorTag",
21+
fields=[
22+
("id", models.UUIDField(db_index=True, default=uuid.uuid4, editable=False)),
23+
("created_at", models.DateTimeField(blank=True, editable=False)),
24+
("updated_at", models.DateTimeField(blank=True, editable=False)),
25+
("deleted_at", models.DateTimeField(blank=True, null=True)),
26+
("name", models.CharField(max_length=256)),
27+
("name_ko", models.CharField(max_length=256, null=True)),
28+
("name_en", models.CharField(max_length=256, null=True)),
29+
("history_id", models.AutoField(primary_key=True, serialize=False)),
30+
("history_date", models.DateTimeField(db_index=True)),
31+
("history_change_reason", models.CharField(max_length=100, null=True)),
32+
(
33+
"history_type",
34+
models.CharField(choices=[("+", "Created"), ("~", "Changed"), ("-", "Deleted")], max_length=1),
35+
),
36+
],
37+
options={
38+
"verbose_name": "historical sponsor tag",
39+
"verbose_name_plural": "historical sponsor tags",
40+
"ordering": ("-history_date", "-history_id"),
41+
"get_latest_by": ("history_date", "history_id"),
42+
},
43+
bases=(simple_history.models.HistoricalChanges, models.Model),
44+
),
45+
migrations.AddField(
46+
model_name="sponsortag",
47+
name="name_en",
48+
field=models.CharField(max_length=256, null=True),
49+
),
50+
migrations.AddField(
51+
model_name="sponsortag",
52+
name="name_ko",
53+
field=models.CharField(max_length=256, null=True),
54+
),
55+
migrations.AddConstraint(
56+
model_name="sponsortag",
57+
constraint=models.UniqueConstraint(fields=("name_ko",), name="uq__spsr_tag__name-name_ko"),
58+
),
59+
migrations.AddConstraint(
60+
model_name="sponsortag",
61+
constraint=models.UniqueConstraint(fields=("name_en",), name="uq__spsr_tag__name-name_en"),
62+
),
63+
migrations.AddField(
64+
model_name="historicalsponsortag",
65+
name="created_by",
66+
field=models.ForeignKey(
67+
blank=True,
68+
db_constraint=False,
69+
null=True,
70+
on_delete=django.db.models.deletion.DO_NOTHING,
71+
related_name="+",
72+
to=settings.AUTH_USER_MODEL,
73+
),
74+
),
75+
migrations.AddField(
76+
model_name="historicalsponsortag",
77+
name="deleted_by",
78+
field=models.ForeignKey(
79+
blank=True,
80+
db_constraint=False,
81+
null=True,
82+
on_delete=django.db.models.deletion.DO_NOTHING,
83+
related_name="+",
84+
to=settings.AUTH_USER_MODEL,
85+
),
86+
),
87+
migrations.AddField(
88+
model_name="historicalsponsortag",
89+
name="event",
90+
field=models.ForeignKey(
91+
blank=True,
92+
db_constraint=False,
93+
null=True,
94+
on_delete=django.db.models.deletion.DO_NOTHING,
95+
related_name="+",
96+
to="event.event",
97+
),
98+
),
99+
migrations.AddField(
100+
model_name="historicalsponsortag",
101+
name="history_user",
102+
field=models.ForeignKey(
103+
null=True, on_delete=django.db.models.deletion.SET_NULL, related_name="+", to=settings.AUTH_USER_MODEL
104+
),
105+
),
106+
migrations.AddField(
107+
model_name="historicalsponsortag",
108+
name="updated_by",
109+
field=models.ForeignKey(
110+
blank=True,
111+
db_constraint=False,
112+
null=True,
113+
on_delete=django.db.models.deletion.DO_NOTHING,
114+
related_name="+",
115+
to=settings.AUTH_USER_MODEL,
116+
),
117+
),
118+
]

app/event/sponsor/translation.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
from event.sponsor.models import Sponsor, SponsorTier
1+
from event.sponsor.models import Sponsor, SponsorTag, SponsorTier
22
from modeltranslation.translator import TranslationOptions, register
33

44

@@ -7,6 +7,11 @@ class SponsorTierTranslationOptions(TranslationOptions):
77
fields = ("name",)
88

99

10+
@register(SponsorTag)
11+
class SponsorTagTranslationOptions(TranslationOptions):
12+
fields = ("name",)
13+
14+
1015
@register(Sponsor)
1116
class SponsorTranslationOptions(TranslationOptions):
1217
fields = ("name",)

0 commit comments

Comments
 (0)