Ubuntu Suomen keskustelualueet
Ubuntun käyttö => Ohjelmointi, palvelimet ja muu edistyneempi käyttö => Aiheen aloitti: JA5U - 01.05.18 - klo:12.39
-
Hei
Saan em. virheen, kun muokkasin settings.py:ta.
Eilen toimi vielä aivan hyvin ja tänään lisäsin tiedoston loppuun asetuksia, jonka jälkeen valittaa tätä.
Vaikka poistan uudet asetukset, niin silti valittaa.
Alkaa muistuttamaan pitkälti Drupalia kaikkine välimuistiihmetyksineen tai ole ainakaan yhtään sen vakaampaa kehittämistä.
Voihan se toki olla tekijässäkin vika, mutta aika erikoisia ovat nämä virheet...
Traceback (most recent call last):
File "manage.py", line 22, in <module>
execute_from_command_line(sys.argv)
File "/home/admin/.local/lib/python3.5/site-packages/django/core/management/__init__.py", line 371, in execute_from_command_line
utility.execute()
File "/home/admin/.local/lib/python3.5/site-packages/django/core/management/__init__.py", line 365, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/home/admin/.local/lib/python3.5/site-packages/django/core/management/base.py", line 288, in run_from_argv
self.execute(*args, **cmd_options)
File "/home/admin/.local/lib/python3.5/site-packages/django/core/management/commands/runserver.py", line 61, in execute
super().execute(*args, **options)
File "/home/admin/.local/lib/python3.5/site-packages/django/core/management/base.py", line 335, in execute
output = self.handle(*args, **options)
File "/home/admin/.local/lib/python3.5/site-packages/django/core/management/commands/runserver.py", line 70, in handle
if not settings.DEBUG and not settings.ALLOWED_HOSTS:
File "/home/admin/.local/lib/python3.5/site-packages/django/conf/__init__.py", line 56, in __getattr__
self._setup(name)
File "/home/admin/.local/lib/python3.5/site-packages/django/conf/__init__.py", line 43, in _setup
self._wrapped = Settings(settings_module)
File "/home/admin/.local/lib/python3.5/site-packages/django/conf/__init__.py", line 106, in __init__
mod = importlib.import_module(self.SETTINGS_MODULE)
File "/usr/lib/python3.5/importlib/__init__.py", line 126, in import_module
return _bootstrap._gcd_import(name[level:], package, level)
File "<frozen importlib._bootstrap>", line 986, in _gcd_import
File "<frozen importlib._bootstrap>", line 969, in _find_and_load
File "<frozen importlib._bootstrap>", line 958, in _find_and_load_unlocked
File "<frozen importlib._bootstrap>", line 673, in _load_unlocked
File "<frozen importlib._bootstrap_external>", line 665, in exec_module
File "<frozen importlib._bootstrap>", line 222, in _call_with_frames_removed
File "/var/www/html/kk-app/kk_project/kk_project/settings.py", line 14, in <module>
from leaflet import LEAFLET_CONFIG
File "/home/admin/.local/lib/python3.5/site-packages/leaflet/__init__.py", line 32, in <module>
LEAFLET_CONFIG = getattr(settings, 'LEAFLET_CONFIG', {})
File "/home/admin/.local/lib/python3.5/site-packages/django/conf/__init__.py", line 56, in __getattr__
self._setup(name)
File "/home/admin/.local/lib/python3.5/site-packages/django/conf/__init__.py", line 43, in _setup
self._wrapped = Settings(settings_module)
File "/home/admin/.local/lib/python3.5/site-packages/django/conf/__init__.py", line 125, in __init__
raise ImproperlyConfigured("The SECRET_KEY setting must not be empty.")
django.core.exceptions.ImproperlyConfigured: The SECRET_KEY setting must not be empty.
-
https://docs.djangoproject.com/en/2.0/ref/settings/#std:setting-SECRET_KEY
Kai siellä settings.py-tiedostossa on Djangon luoma SECRET_KEY? Se luodaan projektia luotaessa.
-
https://docs.djangoproject.com/en/2.0/ref/settings/#std:setting-SECRET_KEY
Kai siellä settings.py-tiedostossa on Djangon luoma SECRET_KEY? Se luodaan projektia luotaessa.
Yritin tuossa otsikossa sanoa, että ei ole tyhjä. Sovellus myös toimi eilen aivan normaalisti, kunnes tänään möksähti.
Muistelisin, että teki saman joskus aiemminkin ja silloin taisin poistaa noita pyc tiedostoja ja aloittaa alusta.
Tympäsee, kun ei ikinä pääse tekemään sitä varsinaista kehittämistä vaan aika menee 95 % kaikkeen muuhun säätämiseen. :-\
Eikä noita "resetointejakaan" viitsi olla aina tekemässä, tuskin kuuluukaan ja jos kuuluu, niin siitä pitäisi mainita jossain 8)
-
https://docs.djangoproject.com/en/2.0/ref/settings/#std:setting-SECRET_KEY
Kai siellä settings.py-tiedostossa on Djangon luoma SECRET_KEY? Se luodaan projektia luotaessa.
Yritin tuossa otsikossa sanoa, että ei ole tyhjä. Sovellus myös toimi eilen aivan normaalisti, kunnes tänään möksähti.
Muistelisin, että teki saman joskus aiemminkin ja silloin taisin poistaa noita pyc tiedostoja ja aloittaa alusta.
No niinpäs onkin. Jostain syystä otsikossa kerrottu tieto, jota ei ole viestissä, tahtoo mennä itseltäni ohi silmien. ::) Yleensä pyc-tiedostoja ei kyllä tarvitse poistella, mutta eipä siitä mitään haittaakaan ole. Käytännössä ne __pycache__-hakemistot voi poistella kokonaan, jos haluaa. Oletko tarkistanut, että Django käyttää oikeaa settings.py-tiedostoa? Tosin jos olet vain luonut projektin (etkä esimerkiksi säädä jonkun hienomman alustan kanssa) ja käytät manage.py:ä komentoihin, niin sen ei pitäisi olla ongelma.
Tympäsee, kun ei ikinä pääse tekemään sitä varsinaista kehittämistä vaan aika menee 95 % kaikkeen muuhun säätämiseen. :-\
Eikä noita "resetointejakaan" viitsi olla aina tekemässä, tuskin kuuluukaan ja jos kuuluu, niin siitä pitäisi mainita jossain 8)
Ei vastaa omaa kokemustani Django-kehityksestä eli jotain menee jossain pieleen.
Muokkaus: Katsoin tarkemmin tuota traceback-listausta ja siellä on tuo Leaflet, joka ei edelleenkään ole itselleni tuttu järjestelmä, mutta syy lienee siellä. Django itsessään toimii yleensä aika hyvin. Näyttäisi vähän siltä, että improttaat siellä settings.py:ssä Leafletistä jotain, mikä haluaisi, että ne asetukset on jo määritelty ja tästä syntyy ongelma. En tiedä riittäisikö, jos tuon SECRET_KEY:n määritelmän siirtäisi ylemmäs siellä settings.py-tiedostossa. Luultavasti tuota LEAFLET_CONFIG:a ei ole tarkoitus importata settings.py:hyn (arvailen vain).
Muokkaus: Typokorjaus.
-
https://docs.djangoproject.com/en/2.0/ref/settings/#std:setting-SECRET_KEY
Kai siellä settings.py-tiedostossa on Djangon luoma SECRET_KEY? Se luodaan projektia luotaessa.
Yritin tuossa otsikossa sanoa, että ei ole tyhjä. Sovellus myös toimi eilen aivan normaalisti, kunnes tänään möksähti.
Muistelisin, että teki saman joskus aiemminkin ja silloin taisin poistaa noita pyc tiedostoja ja aloittaa alusta.
No niinpäs onkin. Jostain syystä otsikossa kerrottu tieto, jota ei ole viestissä, tahtoo mennä itseltäni ohi silmien. ::) Yleensä pyc-tiedostoja ei kyllä tarvitse poistella, mutta eipä siitä mitään haittaakaan ole. Käytännössä ne __pycache__-hakemistot voi poistella kokonaan, jos haluaa. Oletko tarkistanut, että Django käyttää oikeaa settings.py-tiedostoa? Tosin jos olet vain luonut projektin (etkä esimerkiksi säädä jonkun hienomman alustan kanssa) ja käytät manage.py:ä komentoihin, niin sen ei pitäisi olla ongelma.
Tympäsee, kun ei ikinä pääse tekemään sitä varsinaista kehittämistä vaan aika menee 95 % kaikkeen muuhun säätämiseen. :-\
Eikä noita "resetointejakaan" viitsi olla aina tekemässä, tuskin kuuluukaan ja jos kuuluu, niin siitä pitäisi mainita jossain 8)
Ei vastaa omaa kokemustani Django-kehityksestä eli jotain menee jossain pieleen.
Muokkaus: Katsoin tarkemmin tuota traceback-listausta ja siellä on tuo Leaflet, joka ei edelleenkään ole itselleni tuttu järjestelmä, mutta syy lienee siellä. Django itsessään toimii yleensä aika hyvin. Näyttäisi vähän siltä, että improttaat siellä settings.py:ssä Leafletistä jotain, mikä haluaisi, että ne asetukset on jo määritelty ja tästä syntyy ongelma. En tiedä riittäisikö, jos tuon SECRET_KEY:n määritelmän siirtäisi ylemmäs siellä settings.py-tiedostossa. Luultavasti tuota LEAFLET_CONFIG:a ei ole tarkoitus improtatta settings.py:hyn (arvailen vain).
Juurin kokeilin tuota itsekin ja sehän oli se syy :) En tiedä, että onko se jollain toiminut, koska jostain esimerkistä se on bongattu.
Tosin, ne esimerkit on usein niin itsetietoisia, että ei ole ihme vaikka olisi väärään paikkaan kopioitu.
Toisaalta taas, ihan luonnollinen sijainti tuolle LEAFLET_CONFIGin importille, mutta logiikan puolesta kenties ihan väärä.
-
Juurin kokeilin tuota itsekin ja sehän oli se syy :) En tiedä, että onko se jollain toiminut, koska jostain esimerkistä se on bongattu.
Tosin, ne esimerkit on usein niin itsetietoisia, että ei ole ihme vaikka olisi väärään paikkaan kopioitu.
Toisaalta taas, ihan luonnollinen sijainti tuolle LEAFLET_CONFIGin importille, mutta logiikan puolesta kenties ihan väärä.
En oikein ymmärrä, miksi se pitäisi importata asetuksiin, koska tuolla leafletin koodissa se nimenomaan haetaan asetuksista eli tavallaan mennään kehää. Toisaalta Djangossa ohjelmien pitäisi itse määritellä järkevät oletukset asetuksille, jos niitä ei ole käyttäjä määritellyt, tai sitten valittaa niiden puutteesta (kuten SECRET_KEY:n tapauksessa).
Mutta hyvä että selvisi.