(我的操作系统是fedora 34)
我将 django 与 haystack 和 postgresql 一起使用。出于开发目的,我运行 heroku local
命令。我使用三个文件进行设置:base.py、local.py、pro.py。当我运行 heroku 时,我使用 local.py 文件:
from . base import *
DEBUG = True
SECRET_KEY='secretKey'
DATABASES = {
'default': {
'ENGINE':'django.db.backends.sqlite3',
'NAME':os.path.join(BASE_DIR, 'db.sqlite3'),
}
}
if DEBUG:
INTERNAL_IPS = ('127.0.0.1', 'localhost',)
DEBUG_TOOLBAR_PANELS = [
'debug_toolbar.panels.versions.VersionsPanel',
'debug_toolbar.panels.timer.TimerPanel',
'debug_toolbar.panels.settings.SettingsPanel',
'debug_toolbar.panels.headers.HeadersPanel',
'debug_toolbar.panels.request.RequestPanel',
'debug_toolbar.panels.sql.SQLPanel',
'debug_toolbar.panels.staticfiles.StaticFilesPanel',
'debug_toolbar.panels.templates.TemplatesPanel',
'debug_toolbar.panels.cache.CachePanel',
'debug_toolbar.panels.signals.SignalsPanel',
'debug_toolbar.panels.logging.LoggingPanel',
'debug_toolbar.panels.redirects.RedirectsPanel',
]
DEBUG_TOOLBAR_CONFIG = {
'INTERCEPT_REDIRECTS': False,
}
export DJANGO_SETTINGS_MODULE=myshop.settings.local
但 heroku 显示此错误:
12:54:14 PM web.1 | File "/home/user/env2/lib64/python3.9/site-packages/django/contrib/postgres/apps.py", line 1, in <module>
12:54:14 PM web.1 | from psycopg2.extras import (
12:54:14 PM web.1 | File "/home/user/env2/lib64/python3.9/site-packages/psycopg2/__init__.py", line 51, in <module>
12:54:14 PM web.1 | from psycopg2._psycopg import ( # noqa
12:54:14 PM web.1 | ImportError: libpq.so.5: cannot open shared object file: No such file or directory
12:54:14 PM web.1 | [2021-07-21 09:54:14 +0000] [7689] [INFO] Worker exiting (pid: 7689)
12:54:14 PM web.1 | [2021-07-21 12:54:14 +0300] [7688] [INFO] Shutting down: Master
12:54:14 PM web.1 | [2021-07-21 12:54:14 +0300] [7688] [INFO] Reason: Worker failed to boot.
Postgresql 正在运行:
postgresql.service - PostgreSQL database server
Loaded: loaded (/usr/lib/systemd/system/postgresql.service; disabled; vend>
Active: active (running) since Wed 2021-07-21 10:54:34 EEST; 1h 58min ago
Process: 2474 ExecStartPre=/usr/libexec/postgresql-check-db-dir postgresql >
Main PID: 2476 (postmaster)
Tasks: 8 (limit: 9381)
Memory: 31.2M
CPU: 663ms
CGroup: /system.slice/postgresql.service
├─2476 /usr/bin/postmaster -D /var/lib/pgsql/data
├─2477 postgres: logger
├─2479 postgres: checkpointer
├─2480 postgres: background writer
├─2481 postgres: walwriter
├─2482 postgres: autovacuum launcher
├─2483 postgres: stats collector
└─2484 postgres: logical replication launcher
Jul 21 10:54:34 fedora systemd[1]: Starting PostgreSQL database server...
Jul 21 10:54:34 fedora postmaster[2476]: 2021-07-21 10:54:34.242 EEST [2476] LO>
Jul 21 10:54:34 fedora postmaster[2476]: 2021-07-21 10:54:34.242 EEST [2476] HI>
Jul 21 10:54:34 fedora systemd[1]: Started PostgreSQL database server.
我该如何解决这个错误。谢谢