Deploy Bot commited on
Commit
07b1fa6
·
1 Parent(s): 1fe3cba

Fix Django module import issues and configuration

Browse files

- Add root manage.py and settings.py for proper Django setup
- Fix module path issues with backend.core app
- Resolve 'No module named backend.core' error in collectstatic
- Simplify Django project structure for Hugging Face Spaces deployment

Files changed (3) hide show
  1. backend/manage.py +1 -0
  2. manage.py +11 -0
  3. settings.py +82 -0
backend/manage.py CHANGED
@@ -4,6 +4,7 @@ import sys
4
 
5
  if __name__ == '__main__':
6
  os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'backend.settings')
 
7
  try:
8
  from django.core.management import execute_from_command_line
9
  except ImportError as exc:
 
4
 
5
  if __name__ == '__main__':
6
  os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'backend.settings')
7
+ sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
8
  try:
9
  from django.core.management import execute_from_command_line
10
  except ImportError as exc:
manage.py ADDED
@@ -0,0 +1,11 @@
 
 
 
 
 
 
 
 
 
 
 
 
1
+ #!/usr/bin/env python
2
+ import os
3
+ import sys
4
+
5
+ if __name__ == '__main__':
6
+ os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'settings')
7
+ try:
8
+ from django.core.management import execute_from_command_line
9
+ except ImportError as exc:
10
+ raise ImportError("Couldn't import Django") from exc
11
+ execute_from_command_line(sys.argv)
settings.py ADDED
@@ -0,0 +1,82 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ from pathlib import Path
3
+
4
+ BASE_DIR = Path(__file__).resolve().parent
5
+
6
+ SECRET_KEY = 'django-insecure-change-me-in-production'
7
+
8
+ DEBUG = True
9
+
10
+ ALLOWED_HOSTS = ['*']
11
+
12
+ INSTALLED_APPS = [
13
+ 'django.contrib.contenttypes',
14
+ 'django.contrib.auth',
15
+ 'rest_framework',
16
+ 'whitenoise.runserver_nostatic',
17
+ 'backend.core',
18
+ ]
19
+
20
+ MIDDLEWARE = [
21
+ 'django.middleware.security.SecurityMiddleware',
22
+ 'whitenoise.middleware.WhiteNoiseMiddleware',
23
+ 'django.middleware.common.CommonMiddleware',
24
+ 'django.middleware.csrf.CsrfViewMiddleware',
25
+ 'django.middleware.clickjacking.XFrameOptionsMiddleware',
26
+ ]
27
+
28
+ ROOT_URLCONF = 'backend.backend.urls'
29
+
30
+ TEMPLATES = [
31
+ {
32
+ 'BACKEND': 'django.template.backends.django.DjangoTemplates',
33
+ 'DIRS': [BASE_DIR / 'backend' / 'templates'],
34
+ 'APP_DIRS': True,
35
+ 'OPTIONS': {
36
+ 'context_processors': [
37
+ 'django.template.context_processors.debug',
38
+ 'django.template.context_processors.request',
39
+ 'django.contrib.auth.context_processors.auth',
40
+ 'django.contrib.messages.context_processors.messages',
41
+ ],
42
+ },
43
+ },
44
+ ]
45
+
46
+ WSGI_APPLICATION = 'backend.wsgi.application'
47
+
48
+ DATABASES = {
49
+ 'default': {
50
+ 'ENGINE': 'django.db.backends.sqlite3',
51
+ 'NAME': BASE_DIR / 'db.sqlite3',
52
+ }
53
+ }
54
+
55
+ AUTH_PASSWORD_VALIDATORS = [
56
+ {'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator'},
57
+ {'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator'},
58
+ {'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator'},
59
+ {'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator'},
60
+ ]
61
+
62
+ LANGUAGE_CODE = 'en-us'
63
+ TIME_ZONE = 'UTC'
64
+ USE_I18N = True
65
+ USE_TZ = True
66
+
67
+ STATIC_URL = '/static/'
68
+ STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
69
+ STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'
70
+
71
+ DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'
72
+
73
+ REST_FRAMEWORK = {
74
+ 'DEFAULT_PARSER_CLASSES': [
75
+ 'rest_framework.parsers.JSONParser',
76
+ ],
77
+ 'DEFAULT_RENDERER_CLASSES': [
78
+ 'rest_framework.renderers.JSONRenderer',
79
+ ],
80
+ }
81
+
82
+ CORS_ALLOW_ALL_ORIGINS = True