Skip to content

Commit 8532540

Browse files
committed
inherit from CommentAbstractModel
1 parent 81aaffa commit 8532540

File tree

2 files changed

+90
-13
lines changed

2 files changed

+90
-13
lines changed
Lines changed: 86 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
1-
# Generated by Django 4.2.1 on 2023-05-17 22:32
1+
# Generated by Django 4.2.1 on 2023-05-28 11:38
22

3+
from django.conf import settings
34
from django.db import migrations, models
45
import django.db.models.deletion
56

@@ -8,25 +9,103 @@ class Migration(migrations.Migration):
89
initial = True
910

1011
dependencies = [
11-
("django_comments", "0004_add_object_pk_is_removed_index"),
12+
("contenttypes", "0002_remove_content_type_name"),
13+
("sites", "0002_alter_domain_unique"),
14+
migrations.swappable_dependency(settings.AUTH_USER_MODEL),
1215
]
1316

1417
operations = [
1518
migrations.CreateModel(
1619
name="CustomComment",
1720
fields=[
1821
(
19-
"comment_ptr",
20-
models.OneToOneField(
22+
"id",
23+
models.BigAutoField(
2124
auto_created=True,
22-
on_delete=django.db.models.deletion.CASCADE,
23-
parent_link=True,
2425
primary_key=True,
2526
serialize=False,
26-
to="django_comments.comment",
27+
verbose_name="ID",
28+
),
29+
),
30+
(
31+
"object_pk",
32+
models.CharField(
33+
db_index=True, max_length=64, verbose_name="object ID"
34+
),
35+
),
36+
(
37+
"user_name",
38+
models.CharField(
39+
blank=True, max_length=50, verbose_name="user's name"
40+
),
41+
),
42+
(
43+
"user_email",
44+
models.EmailField(
45+
blank=True, max_length=254, verbose_name="user's email address"
46+
),
47+
),
48+
("user_url", models.URLField(blank=True, verbose_name="user's URL")),
49+
("comment", models.TextField(max_length=3000, verbose_name="comment")),
50+
(
51+
"submit_date",
52+
models.DateTimeField(
53+
db_index=True, default=None, verbose_name="date/time submitted"
54+
),
55+
),
56+
(
57+
"ip_address",
58+
models.GenericIPAddressField(
59+
blank=True,
60+
null=True,
61+
unpack_ipv4=True,
62+
verbose_name="IP address",
63+
),
64+
),
65+
(
66+
"is_public",
67+
models.BooleanField(
68+
default=True,
69+
help_text="Uncheck this box to make the comment effectively disappear from the site.",
70+
verbose_name="is public",
71+
),
72+
),
73+
(
74+
"is_removed",
75+
models.BooleanField(
76+
db_index=True,
77+
default=False,
78+
help_text='Check this box if the comment is inappropriate. A "This comment has been removed" message will be displayed instead.',
79+
verbose_name="is removed",
2780
),
2881
),
2982
("file", models.FileField(upload_to="")),
83+
(
84+
"content_type",
85+
models.ForeignKey(
86+
on_delete=django.db.models.deletion.CASCADE,
87+
related_name="content_type_set_for_%(class)s",
88+
to="contenttypes.contenttype",
89+
verbose_name="content type",
90+
),
91+
),
92+
(
93+
"site",
94+
models.ForeignKey(
95+
on_delete=django.db.models.deletion.CASCADE, to="sites.site"
96+
),
97+
),
98+
(
99+
"user",
100+
models.ForeignKey(
101+
blank=True,
102+
null=True,
103+
on_delete=django.db.models.deletion.SET_NULL,
104+
related_name="%(class)s_comments",
105+
to=settings.AUTH_USER_MODEL,
106+
verbose_name="user",
107+
),
108+
),
30109
],
31110
options={
32111
"verbose_name": "comment",
@@ -35,6 +114,5 @@ class Migration(migrations.Migration):
35114
"permissions": [("can_moderate", "Can moderate comments")],
36115
"abstract": False,
37116
},
38-
bases=("django_comments.comment",),
39117
),
40118
]

tests/custom_comments/models.py

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
1-
from django.db import models
1+
from django.db.models import FileField
2+
from django_comments.abstracts import CommentAbstractModel
23

3-
from django_comments.models import Comment
44

5-
6-
class CustomComment(Comment):
7-
file = models.FileField()
5+
class CustomComment(CommentAbstractModel):
6+
file = FileField()

0 commit comments

Comments
 (0)