Кнопка загрузки файла в админке Django не нажимается
Я создавал приложение и ранее у меня работала секция загрузки изображений, однако, спустя 2 недели работы над проектом по какой-то причине кнопка загрузки файла в Django admin больше ничего не делает при нажатии.
Я не могу понять, что блокирует его, так как он находится в админке, Есть предложения?
Это для любого из приложений в проекте. Это admin.py
from django.contrib import admin
from desire import models
admin.site.register(models.Desire)
admin.site.register(models.RelatedProduct)
from django.contrib import admin
from django.contrib.auth.admin import UserAdmin
from account.models import Account
class AccountAdmin(UserAdmin):
list_display = ('email','username','date_joined', 'last_login', 'is_admin','is_staff')
search_fields = ('email','username',)
readonly_fields=('id', 'date_joined', 'last_login')
filter_horizontal = ()
list_filter = ()
fieldsets = ()
admin.site.register(Account, AccountAdmin)
настройки
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
INSTALLED_APPS = [
# my APPs
'personal',
'account',
'ckeditor',
'ckeditor_uploader',
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'channels',
'bootstrap4',
'fontawesome',
'cropperjs',
'django.contrib.humanize',
]
AUTH_USER_MODEL = 'account.Account' # TODO: ADD THIS LINE.
AUTHENTICATION_BACKENDS = (
'django.contrib.auth.backends.AllowAllUsersModelBackend',
'account.backends.CaseInsensitiveModelBackend',
)
MIDDLEWARE = [
'django.middleware.security.SecurityMiddleware',
'django.contrib.sessions.middleware.SessionMiddleware',
'django.middleware.common.CommonMiddleware',
'django.middleware.csrf.CsrfViewMiddleware',
'django.contrib.auth.middleware.AuthenticationMiddleware',
'django.contrib.messages.middleware.MessageMiddleware',
'django.middleware.clickjacking.XFrameOptionsMiddleware',
]
DATA_UPLOAD_MAX_MEMORY_SIZE = 10485760
STATICFILES_DIRS = [
os.path.join(BASE_DIR, 'static'),
os.path.join(BASE_DIR, 'media'),
]
STATIC_URL = '/static/'
MEDIA_URL = '/media/'
STATIC_ROOT = os.path.join(BASE_DIR, 'static_cdn')
MEDIA_ROOT = os.path.join(BASE_DIR, 'media_cdn')
TEMP = os.path.join(BASE_DIR, 'media_cdn/temp')
BASE_URL = "http://127.0.0.1:8000"
Модель желания
from django.db import models
import uuid
from tinymce.models import HTMLField
# Create your models here.
def get_desire_image_filepath(self, filename):
return 'desires/'
def get_default_desire_image():
return "/desires/rope-play.webp"
def get_related_product_image_filepath(self, filename):
return 'related-product/'
def get_default_related_product_image():
return "related-product/swingerprofile.webp"
class Desire(models.Model):
title = models.CharField(max_length=200)
description = models.TextField(null=True, blank=True)
content = HTMLField(null=True, blank=True)
image = models.ImageField(max_length=255, upload_to=get_desire_image_filepath, null=True, blank=True, default=get_default_desire_image)
related_products = models.ManyToManyField('RelatedProduct', blank=True)
def __str__(self):
return self.title
class RelatedProduct(models.Model):
title = models.CharField(max_length=200)
content = HTMLField(null=True, blank=True)
image = models.ImageField(
null=True, blank=True,upload_to='related-product/', default="member/profile/02.jpg")
# image = models.ImageField(max_length=255, upload_to=get_related_product_image_filepath, null=True, blank=True, default=get_default_related_product_image)
redirect_url = models.URLField(max_length=500, null=True, unique=False, blank=True, help_text="The URL to be visited when a notification is clicked.")
def __str__(self):
return self.title
Модель счета
просто удалите self и filename из функции.
вместо:
def get_desire_image_filepath(self, filename):
return 'desires/'
попробуйте это:
def get_desire_image_filepath(instance, filename):
return 'desires/'.format(instance.user.id, filename) #user.id is depends on your view
После целого дня многократных попыток выяснилось, что мне нужно обновить chrome!