Статический файл Ошибка при отправке приложения django на heroku - python3 vs python - PullRequest
0 голосов
/ 10 июня 2018

Я установил удаленный, инициализированный git, чем добавил файлы.Когда я нажимаю, возникает следующая ошибка:

git push heroku master
Counting objects: 59, done.
Delta compression using up to 8 threads.
Compressing objects: 100% (53/53), done.
Writing objects: 100% (59/59), 19.10 KiB | 0 bytes/s, done.
Total 59 (delta 8), reused 0 (delta 0)
remote: Compressing source files... done.
remote: Building source:
remote: 
remote: -----> Python app detected
remote:  !     The latest version of Python 3 is python-3.6.5 (you are using python-3.5.2, which is unsupported).
remote:  !     We recommend upgrading by specifying the latest version (python-3.6.5).
remote:        Learn More: https://devcenter.heroku.com/articles/python-runtimes
remote: -----> Installing python-3.5.2
remote: -----> Installing pip
remote: -----> Installing requirements with pip
remote:        Collecting Django==2.0.4 (from -r /tmp/build_aa69fb831acf322358f0bb817d4a520e/requirements.txt (line 1))
remote:          Downloading https://files.pythonhosted.org/packages/89/f9/94c20658f0cdecc2b6607811e2c0bb042408a51f589e5ad0cb0eac3236a1/Django-2.0.4-py3-none-any.whl (7.1MB)
remote:        Collecting gunicorn==19.8.1 (from -r /tmp/build_aa69fb831acf322358f0bb817d4a520e/requirements.txt (line 2))
remote:          Downloading https://files.pythonhosted.org/packages/55/cb/09fe80bddf30be86abfc06ccb1154f97d6c64bb87111de066a5fc9ccb937/gunicorn-19.8.1-py2.py3-none-any.whl (112kB)
remote:        Collecting pytz (from Django==2.0.4->-r /tmp/build_aa69fb831acf322358f0bb817d4a520e/requirements.txt (line 1))
remote:          Downloading https://files.pythonhosted.org/packages/dc/83/15f7833b70d3e067ca91467ca245bae0f6fe56ddc7451aa0dc5606b120f2/pytz-2018.4-py2.py3-none-any.whl (510kB)
remote:        Installing collected packages: pytz, Django, gunicorn
remote:        Successfully installed Django-2.0.4 gunicorn-19.8.1 pytz-2018.4
remote: 
remote: -----> $ python manage.py collectstatic --noinput
remote:        Traceback (most recent call last):
remote:          File "/app/.heroku/python/lib/python3.5/site-packages/django/db/backends/postgresql/base.py", line 20, in <module>
remote:            import psycopg2 as Database
remote:        ImportError: No module named 'psycopg2'
remote:        During handling of the above exception, another exception occurred:
remote:        Traceback (most recent call last):
remote:          File "manage.py", line 15, in <module>
remote:            execute_from_command_line(sys.argv)
remote:          File "/app/.heroku/python/lib/python3.5/site-packages/django/core/management/__init__.py", line 371, in execute_from_command_line
remote:            utility.execute()
remote:          File "/app/.heroku/python/lib/python3.5/site-packages/django/core/management/__init__.py", line 347, in execute
remote:            django.setup()
remote:          File "/app/.heroku/python/lib/python3.5/site-packages/django/__init__.py", line 24, in setup
remote:            apps.populate(settings.INSTALLED_APPS)
remote:          File "/app/.heroku/python/lib/python3.5/site-packages/django/apps/registry.py", line 112, in populate
remote:            app_config.import_models()
remote:          File "/app/.heroku/python/lib/python3.5/site-packages/django/apps/config.py", line 198, in import_models
remote:            self.models_module = import_module(models_module_name)
remote:          File "/app/.heroku/python/lib/python3.5/importlib/__init__.py", line 126, in import_module
remote:            return _bootstrap._gcd_import(name[level:], package, level)
remote:          File "<frozen importlib._bootstrap>", line 986, in _gcd_import
remote:          File "<frozen importlib._bootstrap>", line 969, in _find_and_load
remote:          File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
remote:          File "<frozen importlib._bootstrap>", line 673, in _load_unlocked
remote:          File "<frozen importlib._bootstrap_external>", line 665, in exec_module
remote:          File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
remote:          File "/tmp/build_aa69fb831acf322358f0bb817d4a520e/logistics/models.py", line 5, in <module>
remote:            class income(models.Model):
remote:          File "/app/.heroku/python/lib/python3.5/site-packages/django/db/models/base.py", line 114, in __new__
remote:            new_class.add_to_class('_meta', Options(meta, app_label))
remote:          File "/app/.heroku/python/lib/python3.5/site-packages/django/db/models/base.py", line 315, in add_to_class
remote:            value.contribute_to_class(cls, name)
remote:          File "/app/.heroku/python/lib/python3.5/site-packages/django/db/models/options.py", line 205, in contribute_to_class
remote:            self.db_table = truncate_name(self.db_table, connection.ops.max_name_length())
remote:          File "/app/.heroku/python/lib/python3.5/site-packages/django/db/__init__.py", line 33, in __getattr__
remote:            return getattr(connections[DEFAULT_DB_ALIAS], item)
remote:          File "/app/.heroku/python/lib/python3.5/site-packages/django/db/utils.py", line 202, in __getitem__
remote:            backend = load_backend(db['ENGINE'])
remote:          File "/app/.heroku/python/lib/python3.5/site-packages/django/db/utils.py", line 110, in load_backend
remote:            return import_module('%s.base' % backend_name)
remote:          File "/app/.heroku/python/lib/python3.5/importlib/__init__.py", line 126, in import_module
remote:            return _bootstrap._gcd_import(name[level:], package, level)
remote:          File "<frozen importlib._bootstrap>", line 986, in _gcd_import
remote:          File "<frozen importlib._bootstrap>", line 969, in _find_and_load
remote:          File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
remote:          File "<frozen importlib._bootstrap>", line 673, in _load_unlocked
remote:          File "<frozen importlib._bootstrap_external>", line 665, in exec_module
remote:          File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
remote:          File "/app/.heroku/python/lib/python3.5/site-packages/django/db/backends/postgresql/base.py", line 24, in <module>
remote:            raise ImproperlyConfigured("Error loading psycopg2 module: %s" % e)
remote:        django.core.exceptions.ImproperlyConfigured: Error loading psycopg2 module: No module named 'psycopg2'
remote: 
remote:  !     Error while running '$ python manage.py collectstatic --noinput'.
remote:        See traceback above for details.
remote: 
remote:        You may need to update application code to resolve this error.
remote:        Or, you can disable collectstatic for this application:
remote: 
remote:           $ heroku config:set DISABLE_COLLECTSTATIC=1
remote: 
remote:        https://devcenter.heroku.com/articles/django-assets
remote:  !     Push rejected, failed to compile Python app.
remote: 
remote:  !     Push failed
remote: Verifying deploy...
remote: 
remote: !   Push rejected to billtracker2.
remote: 
To https://git.heroku.com/billtracker2.git
 ! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://git.heroku.com/billtracker2.git'

После того, как подопечные я отредактировал мои настройки, добавив STATIC_ROOT:

STATIC_ROOT = os.path.join(BASE_DIR, 'staticfiles')
STATIC_URL = '/static/Logistics/'

Ошибка по-прежнему возникает.

Я попробовал команды, которые heroku пытался запустить локально, и получил следующее:

python manage.py collectstatic --noinput
  File "manage.py", line 14
    ) from exc
         ^
SyntaxError: invalid syntax

Однако, когда я запускал тот же код, но в python3, у меня не было ошибок:

119 static files copied to '/media/keifer/Storage/Books/billTracker2/staticfiles'.

Что происходитнеправильно?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...