Skip to content

Commit 8c1aaae

Browse files
committed
Merge branch 'django-hosting-heroku' of github.com:realpython/materials into django-hosting-heroku
2 parents 3886364 + 5e7f6fd commit 8c1aaae

File tree

25 files changed

+209
-202
lines changed

25 files changed

+209
-202
lines changed

django-hosting-heroku/source_code_final/portfolio-project/manage.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
def main():
88
"""Run administrative tasks."""
9-
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'portfolio.settings')
9+
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "portfolio.settings")
1010
try:
1111
from django.core.management import execute_from_command_line
1212
except ImportError as exc:
@@ -18,5 +18,5 @@ def main():
1818
execute_from_command_line(sys.argv)
1919

2020

21-
if __name__ == '__main__':
21+
if __name__ == "__main__":
2222
main()

django-hosting-heroku/source_code_final/portfolio-project/portfolio/asgi.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,6 @@
1111

1212
from django.core.asgi import get_asgi_application
1313

14-
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'portfolio.settings')
14+
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "portfolio.settings")
1515

1616
application = get_asgi_application()

django-hosting-heroku/source_code_final/portfolio-project/portfolio/settings.py

Lines changed: 36 additions & 35 deletions
Original file line numberDiff line numberDiff line change
@@ -31,52 +31,52 @@
3131
# Application definition
3232

3333
INSTALLED_APPS = [
34-
'django.contrib.admin',
35-
'django.contrib.auth',
36-
'django.contrib.contenttypes',
37-
'django.contrib.sessions',
38-
'django.contrib.messages',
39-
'django.contrib.staticfiles',
34+
"django.contrib.admin",
35+
"django.contrib.auth",
36+
"django.contrib.contenttypes",
37+
"django.contrib.sessions",
38+
"django.contrib.messages",
39+
"django.contrib.staticfiles",
4040
]
4141

4242
MIDDLEWARE = [
43-
'django.middleware.security.SecurityMiddleware',
44-
'django.contrib.sessions.middleware.SessionMiddleware',
45-
'django.middleware.common.CommonMiddleware',
46-
'django.middleware.csrf.CsrfViewMiddleware',
47-
'django.contrib.auth.middleware.AuthenticationMiddleware',
48-
'django.contrib.messages.middleware.MessageMiddleware',
49-
'django.middleware.clickjacking.XFrameOptionsMiddleware',
43+
"django.middleware.security.SecurityMiddleware",
44+
"django.contrib.sessions.middleware.SessionMiddleware",
45+
"django.middleware.common.CommonMiddleware",
46+
"django.middleware.csrf.CsrfViewMiddleware",
47+
"django.contrib.auth.middleware.AuthenticationMiddleware",
48+
"django.contrib.messages.middleware.MessageMiddleware",
49+
"django.middleware.clickjacking.XFrameOptionsMiddleware",
5050
]
5151

52-
ROOT_URLCONF = 'portfolio.urls'
52+
ROOT_URLCONF = "portfolio.urls"
5353

5454
TEMPLATES = [
5555
{
56-
'BACKEND': 'django.template.backends.django.DjangoTemplates',
57-
'DIRS': [],
58-
'APP_DIRS': True,
59-
'OPTIONS': {
60-
'context_processors': [
61-
'django.template.context_processors.debug',
62-
'django.template.context_processors.request',
63-
'django.contrib.auth.context_processors.auth',
64-
'django.contrib.messages.context_processors.messages',
56+
"BACKEND": "django.template.backends.django.DjangoTemplates",
57+
"DIRS": [],
58+
"APP_DIRS": True,
59+
"OPTIONS": {
60+
"context_processors": [
61+
"django.template.context_processors.debug",
62+
"django.template.context_processors.request",
63+
"django.contrib.auth.context_processors.auth",
64+
"django.contrib.messages.context_processors.messages",
6565
],
6666
},
6767
},
6868
]
6969

70-
WSGI_APPLICATION = 'portfolio.wsgi.application'
70+
WSGI_APPLICATION = "portfolio.wsgi.application"
7171

7272

7373
# Database
7474
# https://docs.djangoproject.com/en/3.2/ref/settings/#databases
7575

7676
DATABASES = {
77-
'default': {
78-
'ENGINE': 'django.db.backends.sqlite3',
79-
'NAME': BASE_DIR / 'db.sqlite3',
77+
"default": {
78+
"ENGINE": "django.db.backends.sqlite3",
79+
"NAME": BASE_DIR / "db.sqlite3",
8080
}
8181
}
8282

@@ -86,26 +86,26 @@
8686

8787
AUTH_PASSWORD_VALIDATORS = [
8888
{
89-
'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
89+
"NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator",
9090
},
9191
{
92-
'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
92+
"NAME": "django.contrib.auth.password_validation.MinimumLengthValidator",
9393
},
9494
{
95-
'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
95+
"NAME": "django.contrib.auth.password_validation.CommonPasswordValidator",
9696
},
9797
{
98-
'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
98+
"NAME": "django.contrib.auth.password_validation.NumericPasswordValidator",
9999
},
100100
]
101101

102102

103103
# Internationalization
104104
# https://docs.djangoproject.com/en/3.2/topics/i18n/
105105

106-
LANGUAGE_CODE = 'en-us'
106+
LANGUAGE_CODE = "en-us"
107107

108-
TIME_ZONE = 'UTC'
108+
TIME_ZONE = "UTC"
109109

110110
USE_I18N = True
111111

@@ -117,11 +117,12 @@
117117
# Static files (CSS, JavaScript, Images)
118118
# https://docs.djangoproject.com/en/3.2/howto/static-files/
119119

120-
STATIC_URL = '/static/'
120+
STATIC_URL = "/static/"
121121

122122
# Default primary key field type
123123
# https://docs.djangoproject.com/en/3.2/ref/settings/#default-auto-field
124124

125-
DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'
125+
DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField"
126126
import django_heroku
127+
127128
django_heroku.settings(locals())

django-hosting-heroku/source_code_final/portfolio-project/portfolio/urls.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,5 @@
1717
from django.urls import path
1818

1919
urlpatterns = [
20-
path('admin/', admin.site.urls),
20+
path("admin/", admin.site.urls),
2121
]

django-hosting-heroku/source_code_final/portfolio-project/portfolio/wsgi.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,6 @@
1111

1212
from django.core.wsgi import get_wsgi_application
1313

14-
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'portfolio.settings')
14+
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "portfolio.settings")
1515

1616
application = get_wsgi_application()

django-hosting-heroku/source_code_step_1/portfolio-project/manage.py

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66

77
def main():
88
"""Run administrative tasks."""
9-
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'portfolio.settings')
9+
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "portfolio.settings")
1010
try:
1111
from django.core.management import execute_from_command_line
1212
except ImportError as exc:
@@ -18,5 +18,5 @@ def main():
1818
execute_from_command_line(sys.argv)
1919

2020

21-
if __name__ == '__main__':
21+
if __name__ == "__main__":
2222
main()

django-hosting-heroku/source_code_step_1/portfolio-project/portfolio/asgi.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,6 @@
1111

1212
from django.core.asgi import get_asgi_application
1313

14-
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'portfolio.settings')
14+
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "portfolio.settings")
1515

1616
application = get_asgi_application()

django-hosting-heroku/source_code_step_1/portfolio-project/portfolio/settings.py

Lines changed: 38 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,9 @@
2020
# See https://docs.djangoproject.com/en/3.2/howto/deployment/checklist/
2121

2222
# SECURITY WARNING: keep the secret key used in production secret!
23-
SECRET_KEY = 'django-insecure-=bad%3%tbrw8(ohgu2uyi7)acv!$1br3=j-o)i@b+1d9g-sd1('
23+
SECRET_KEY = (
24+
"django-insecure-=bad%3%tbrw8(ohgu2uyi7)acv!$1br3=j-o)i@b+1d9g-sd1("
25+
)
2426

2527
# SECURITY WARNING: don't run with debug turned on in production!
2628
DEBUG = True
@@ -31,52 +33,52 @@
3133
# Application definition
3234

3335
INSTALLED_APPS = [
34-
'django.contrib.admin',
35-
'django.contrib.auth',
36-
'django.contrib.contenttypes',
37-
'django.contrib.sessions',
38-
'django.contrib.messages',
39-
'django.contrib.staticfiles',
36+
"django.contrib.admin",
37+
"django.contrib.auth",
38+
"django.contrib.contenttypes",
39+
"django.contrib.sessions",
40+
"django.contrib.messages",
41+
"django.contrib.staticfiles",
4042
]
4143

4244
MIDDLEWARE = [
43-
'django.middleware.security.SecurityMiddleware',
44-
'django.contrib.sessions.middleware.SessionMiddleware',
45-
'django.middleware.common.CommonMiddleware',
46-
'django.middleware.csrf.CsrfViewMiddleware',
47-
'django.contrib.auth.middleware.AuthenticationMiddleware',
48-
'django.contrib.messages.middleware.MessageMiddleware',
49-
'django.middleware.clickjacking.XFrameOptionsMiddleware',
45+
"django.middleware.security.SecurityMiddleware",
46+
"django.contrib.sessions.middleware.SessionMiddleware",
47+
"django.middleware.common.CommonMiddleware",
48+
"django.middleware.csrf.CsrfViewMiddleware",
49+
"django.contrib.auth.middleware.AuthenticationMiddleware",
50+
"django.contrib.messages.middleware.MessageMiddleware",
51+
"django.middleware.clickjacking.XFrameOptionsMiddleware",
5052
]
5153

52-
ROOT_URLCONF = 'portfolio.urls'
54+
ROOT_URLCONF = "portfolio.urls"
5355

5456
TEMPLATES = [
5557
{
56-
'BACKEND': 'django.template.backends.django.DjangoTemplates',
57-
'DIRS': [],
58-
'APP_DIRS': True,
59-
'OPTIONS': {
60-
'context_processors': [
61-
'django.template.context_processors.debug',
62-
'django.template.context_processors.request',
63-
'django.contrib.auth.context_processors.auth',
64-
'django.contrib.messages.context_processors.messages',
58+
"BACKEND": "django.template.backends.django.DjangoTemplates",
59+
"DIRS": [],
60+
"APP_DIRS": True,
61+
"OPTIONS": {
62+
"context_processors": [
63+
"django.template.context_processors.debug",
64+
"django.template.context_processors.request",
65+
"django.contrib.auth.context_processors.auth",
66+
"django.contrib.messages.context_processors.messages",
6567
],
6668
},
6769
},
6870
]
6971

70-
WSGI_APPLICATION = 'portfolio.wsgi.application'
72+
WSGI_APPLICATION = "portfolio.wsgi.application"
7173

7274

7375
# Database
7476
# https://docs.djangoproject.com/en/3.2/ref/settings/#databases
7577

7678
DATABASES = {
77-
'default': {
78-
'ENGINE': 'django.db.backends.sqlite3',
79-
'NAME': BASE_DIR / 'db.sqlite3',
79+
"default": {
80+
"ENGINE": "django.db.backends.sqlite3",
81+
"NAME": BASE_DIR / "db.sqlite3",
8082
}
8183
}
8284

@@ -86,26 +88,26 @@
8688

8789
AUTH_PASSWORD_VALIDATORS = [
8890
{
89-
'NAME': 'django.contrib.auth.password_validation.UserAttributeSimilarityValidator',
91+
"NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator",
9092
},
9193
{
92-
'NAME': 'django.contrib.auth.password_validation.MinimumLengthValidator',
94+
"NAME": "django.contrib.auth.password_validation.MinimumLengthValidator",
9395
},
9496
{
95-
'NAME': 'django.contrib.auth.password_validation.CommonPasswordValidator',
97+
"NAME": "django.contrib.auth.password_validation.CommonPasswordValidator",
9698
},
9799
{
98-
'NAME': 'django.contrib.auth.password_validation.NumericPasswordValidator',
100+
"NAME": "django.contrib.auth.password_validation.NumericPasswordValidator",
99101
},
100102
]
101103

102104

103105
# Internationalization
104106
# https://docs.djangoproject.com/en/3.2/topics/i18n/
105107

106-
LANGUAGE_CODE = 'en-us'
108+
LANGUAGE_CODE = "en-us"
107109

108-
TIME_ZONE = 'UTC'
110+
TIME_ZONE = "UTC"
109111

110112
USE_I18N = True
111113

@@ -117,9 +119,9 @@
117119
# Static files (CSS, JavaScript, Images)
118120
# https://docs.djangoproject.com/en/3.2/howto/static-files/
119121

120-
STATIC_URL = '/static/'
122+
STATIC_URL = "/static/"
121123

122124
# Default primary key field type
123125
# https://docs.djangoproject.com/en/3.2/ref/settings/#default-auto-field
124126

125-
DEFAULT_AUTO_FIELD = 'django.db.models.BigAutoField'
127+
DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField"

django-hosting-heroku/source_code_step_1/portfolio-project/portfolio/urls.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,5 +17,5 @@
1717
from django.urls import path
1818

1919
urlpatterns = [
20-
path('admin/', admin.site.urls),
20+
path("admin/", admin.site.urls),
2121
]

django-hosting-heroku/source_code_step_1/portfolio-project/portfolio/wsgi.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,6 @@
1111

1212
from django.core.wsgi import get_wsgi_application
1313

14-
os.environ.setdefault('DJANGO_SETTINGS_MODULE', 'portfolio.settings')
14+
os.environ.setdefault("DJANGO_SETTINGS_MODULE", "portfolio.settings")
1515

1616
application = get_wsgi_application()

0 commit comments

Comments
 (0)