diff --git a/pyconkr/settings-dev.py b/pyconkr/settings-dev.py index 6b4cc89..3554a1f 100644 --- a/pyconkr/settings-dev.py +++ b/pyconkr/settings-dev.py @@ -1,4 +1,5 @@ import os + from pyconkr.settings import * DEBUG = True diff --git a/pyconkr/settings-prod.py b/pyconkr/settings-prod.py index 0c752e5..38ee09c 100644 --- a/pyconkr/settings-prod.py +++ b/pyconkr/settings-prod.py @@ -1,4 +1,5 @@ import os + from pyconkr.settings import * DEBUG = False diff --git a/pyconkr/settings.py b/pyconkr/settings.py index 5b72b94..c26de81 100644 --- a/pyconkr/settings.py +++ b/pyconkr/settings.py @@ -9,7 +9,7 @@ For the full list of settings and their values, see https://docs.djangoproject.com/en/4.1/ref/settings/ """ - +import os from pathlib import Path # Build paths inside the project like this: BASE_DIR / 'subdir'. @@ -37,11 +37,9 @@ "django.contrib.sessions", "django.contrib.messages", "django.contrib.staticfiles", - # add-on "rest_framework", - "django_summernote" - + "django_summernote", # apps "sponsor", ] @@ -130,5 +128,5 @@ DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField" # django-summernote -MEDIA_URL = '/media/' -MEDIA_ROOT = os.path.join(BASE_DIR, 'media/') +MEDIA_URL = "/media/" +MEDIA_ROOT = os.path.join(BASE_DIR, "media/") diff --git a/pyconkr/urls.py b/pyconkr/urls.py index 8d2711b..8a42b4c 100644 --- a/pyconkr/urls.py +++ b/pyconkr/urls.py @@ -14,11 +14,11 @@ 2. Add a URL to urlpatterns: path('blog/', include('blog.urls')) """ from django.contrib import admin -from django.urls import path, include +from django.urls import include, path urlpatterns = [ path("api-auth/", include("rest_framework.urls")), - path('summernote/', include("django_summernote.urls")), + path("summernote/", include("django_summernote.urls")), path("admin/", admin.site.urls), path("sponsors/", include("sponsor.urls")), ] diff --git a/requirements.txt b/requirements.txt index 71dd51c..cd79985 100644 --- a/requirements.txt +++ b/requirements.txt @@ -9,4 +9,6 @@ mysql-connector-python==8.0.32 mysqlclient==2.1.1 sqlparse==0.4.3 tzdata==2022.7 -sorl-thumbnail==12.9.0 \ No newline at end of file +sorl-thumbnail==12.9.0 +django-summernote==0.8.20.0 +Pillow==9.4.0 diff --git a/sponsor/admin.py b/sponsor/admin.py index 52de445..b0dceb5 100644 --- a/sponsor/admin.py +++ b/sponsor/admin.py @@ -1,25 +1,44 @@ from django.contrib import admin +from django_summernote.admin import SummernoteModelAdmin + from sponsor.models import Sponsor, SponsorLevel class SponsorAdmin(SummernoteModelAdmin): - formfield_overrides = {models.TextField: { - 'widget': SummernoteWidgetWithCustomToolbar}} - autocomplete_fields = ('creator', 'manager_id',) - list_display = ('creator', 'name', 'level', 'manager_name', 'manager_email', 'manager_id', - 'submitted', 'accepted', 'paid_at',) - list_filter = ('accepted',) - ordering = ('-created_at',) + summernote_fields = "__all__" + autocomplete_fields = ( + "creator", + "manager_id", + ) + list_display = ( + "creator", + "name", + "level", + "manager_name", + "manager_email", + "manager_id", + "submitted", + "accepted", + "paid_at", + ) + list_filter = ("accepted",) + ordering = ("-created_at",) admin.site.register(Sponsor, SponsorAdmin) class SponsorLevelAdmin(SummernoteModelAdmin): - list_display = ('id', 'order', 'name', 'slug', 'price', 'limit',) - list_editable = ('order', 'slug',) - ordering = ('order',) - search_fields = ('name',) + list_display = ( + "id", + "order", + "name", + "price", + "limit", + ) + list_editable = ("order",) + ordering = ("order",) + search_fields = ("name",) admin.site.register(SponsorLevel, SponsorLevelAdmin) diff --git a/sponsor/models.py b/sponsor/models.py index 65d9ffb..63a8ed2 100644 --- a/sponsor/models.py +++ b/sponsor/models.py @@ -1,5 +1,5 @@ -from django.db import models from django.contrib.auth import get_user_model +from django.db import models from sorl.thumbnail import ImageField as SorlImageField User = get_user_model() @@ -60,8 +60,8 @@ class Meta: creator = models.ForeignKey( User, - null=True, # TODO: 추루 로그인 적용 후 입력 - blank=True, # TODO: 추루 로그인 적용 후 입력 + null=True, # TODO: 추루 로그인 적용 후 입력 + blank=True, # TODO: 추루 로그인 적용 후 입력 on_delete=models.CASCADE, help_text="후원사를 등록한 유저", related_name="sponsor_creator", diff --git a/sponsor/urls.py b/sponsor/urls.py index dcfc3c4..1160f1c 100644 --- a/sponsor/urls.py +++ b/sponsor/urls.py @@ -1,6 +1,6 @@ from django.contrib import admin -from django.urls import path, include +from django.urls import include, path urlpatterns = [ # path("", ), # TODO -] \ No newline at end of file +]