Panduan lengkap ini menerangkan langkah demi langkah bagaimana untuk menggunakan aplikasi Django di Heroku dan konfigurasikan pangkalan data PostgreSQL
Prasyarat:
Sebelum anda memulakan, periksa bahawa anda mempunyai:
python 3.x
- git
- Akaun Heroku
- aplikasi django berfungsi tempatan
- antara muka baris perintah Heroku (Heroku CLI)
-
Penyediaan Projek:
Struktur Projek: - Projek anda mesti kelihatan seperti ini:
1 2 3 4 5 6 7 8 9 | <code>my_project/
├── manage.py
├── my_project/
│ ├── __init__.py
│ ├── settings.py
│ ├── urls.py
│ └── wsgi.py
├── requirements.txt
└── Procfile</code>
|
Salin selepas log masuk
Konfigurasi kebergantungan: -
Buat fail
:
requirements.txt
Tambahkan bangunan luar berikut:
1 | pip freeze > requirements.txt
|
Salin selepas log masuk
1 2 3 4 5 6 | <code>django
gunicorn
psycopg2-binary
django-environ
whitenoise
dj-database-url</code>
|
Salin selepas log masuk
konfigurasi django untuk Heroku: -
Ubah suai fail
:
settings.py
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 | import os
import dj_database_url
from pathlib import Path
BASE_DIR = Path( __file__ ).resolve().parent.parent
SECRET_KEY = os.environ.get( 'SECRET_KEY' , 'votre-clé-secrète-par-défaut' )
DEBUG = os.environ.get( 'DEBUG' , 'True' ) == 'True'
ALLOWED_HOSTS = os.environ.get( 'ALLOWED_HOSTS' , '' ).split( ',' )
DATABASES = {
'default' : dj_database_url.config(
default =os.environ.get( 'DATABASE_URL' , 'sqlite:///db.sqlite3' ),
conn_max_age=600
)
}
STATIC_URL = '/static/'
STATIC_ROOT = BASE_DIR / 'staticfiles'
STATICFILES_STORAGE = 'whitenoise.storage.CompressedManifestStaticFilesStorage'
MIDDLEWARE = [
# ...
'whitenoise.middleware.WhiteNoiseMiddleware' ,
]
|
Salin selepas log masuk
Penciptaan Procfile: -
Buat fail
ke akar projek dengan kandungan berikut:
Procfile
1 | <code>web: gunicorn my_project.wsgi</code>
|
Salin selepas log masuk
penyebaran di Heroku:
Penciptaan permohonan Heroku: -
1 | heroku create mon-app-django
|
Salin selepas log masuk
Konfigurasi Pembolehubah Alam Sekitar: -
1 2 3 | heroku config:set SECRET_KEY= 'votre-clé-secrète'
heroku config:set DEBUG= 'False'
heroku config:set ALLOWED_HOSTS= '.herokuapp.com'
|
Salin selepas log masuk
Pangkalan data PostgreSQL: (diteruskan di bahagian seterusnya) -
Atas ialah kandungan terperinci Django Heroku: Panduan Penyebaran Lengkap �. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!