Python Django problémák

Ez a téma lezárásra került a moderátor által. A lezárás oka: Tudástárban egy téma – egy kérdés/probléma elv érvényesül.
Python Django problémák
2017-03-15T22:06:29+01:00
2017-03-20T22:18:55+01:00
2022-10-15T23:15:25+02:00
rocky
Próbálkozom a Python Django keretrendszer működtetésével, de rengeteg a gondom vele.

Nem egy példát elkezdtem már beindítani, nem sok sikerrel eddig.  Hol verzió nem egyezések miatt, ez a Django Python is nagyon nem akar működni más verziókkal, a virtualenv-et is próbáltam, az se tiszta még teljesen, minek mikor hol van a hatóköre.

A python manage.py createsuperuser   parancsnál pl. valamelyik próbánál létrehoztam egyet, de másik projectnél nem enged ugyanazon nevűt pl. most ha külön virtualenv van mindnél, ez a superuser ez közös ? De ha meg a másik projectnél próbáltam a már meglevő userrel belépni, azt mégse ismeri.

Most legutóbb ezt próbálom végigvinni a weboldal alapján. Django REST Framework Tutorial, Examples, Demo - Tests4Geeks.

Ezeken végigmentem:

mkdir drf-demo
cd drf-demo
virtualenv .env 
  "ezután aktiválni kéne a virtual environmentet !!!! ??? az kimaradt a leírásból ???
.env\Scripts\activate   
pip install "Django >= 1.9, < 1.10"
django-admin startproject project --template=https://github.com/ambivalentno/django-skeleton/archive/master.zip
mkdir log
mkdir project\db
python project\manage.py runserver     itt kiír valami kis hibácskát már

project/apps/core/models.py   ebbe betettem a kellő tartalmat

python project/manage.py makemigrations core
python project/manage.py migrate core                    itt olyan hiba jött elő, hogy

  sqlite3.OperationalError: no such table:django_content_type

Rákerestem neten, egyik hiba oknak azt látom, hogy :

• Do you have django.contrib.contenttypes in your INSTALLED_APPS in settings.py ?

Megnéztem a projectben nem találok settings.py file-t eleve, innen mit is csináljak ?
Innen veszi a project kiindulási állapotát: https://github.com/ambivalentno/django-skeleton/archive/master.zip

Lenne majd még kérdésem több, ha nem baj itt fogom feltenni, ha lesz segítség. Köszönöm.
Mutasd a teljes hozzászólást!
Most lefuttattam és csoda történt, valami sok adatbázis táűblát létrehozoitt úgy néz ki. Na, ez valahogy kimaradt a weboldal leírásában, bár már csináltam hasonlót de még nem tiszta minden, így magamtól nem jutott eszembe ez legalábbis.

Ha most folytatom és megy tovább rendesen, az nagyon jó lenne, nagy öröm. Kösz.

Most a 

python project/manage.py migrate core    parancs is végrehajtódott, akkor innen lehet megy tovább rendesen. 

Még lehet kérdezek később ugyanitt, ha lesz még pár gondom. Közben elfogadom a válaszod is már most.
Mutasd a teljes hozzászólást!

  • A runserver elott ezt futtasd le: 

    python project/manage.py migrate
    Mutasd a teljes hozzászólást!
  • Most lefuttattam és csoda történt, valami sok adatbázis táűblát létrehozoitt úgy néz ki. Na, ez valahogy kimaradt a weboldal leírásában, bár már csináltam hasonlót de még nem tiszta minden, így magamtól nem jutott eszembe ez legalábbis.

    Ha most folytatom és megy tovább rendesen, az nagyon jó lenne, nagy öröm. Kösz.

    Most a 

    python project/manage.py migrate core    parancs is végrehajtódott, akkor innen lehet megy tovább rendesen. 

    Még lehet kérdezek később ugyanitt, ha lesz még pár gondom. Közben elfogadom a válaszod is már most.
    Mutasd a teljes hozzászólást!
  • Közben elfogadom a válaszod is már most.

    Az nem az enyem volt :)

    Djangoval en csak addig jutottam hogy kiprobaljam, nem jott be.
    Mutasd a teljes hozzászólást!
  • Most még én is a próbáknál tartok, miért nem tetszett ?  

    Egy kisebb rendszert akarnék ezzel megcsinálni, ami adatokat gyűjt be és szolgáltat visszafele, néhány táblát, nem sokat, nem bonyolult lesz.
    Mutasd a teljes hozzászólást!
  • miért nem tetszett ?

    A felepitese miatt, jobban megszoktam a rails-es verziot. Djangoban app-okra van osztva a projekt, meg eleg szetszortnak tunik. 

    A flask-ot vagy sanic-ot is erdemes megnezni, ha tenyleg kicsi, egyszeru a projekt akkor azzal gyorsabban sikerulhet, kevesebbet kell megtanulni, egyszerubb.
    Mutasd a teljes hozzászólást!
  • A setup.py-nak nem kell benne lenni mindig ? Azt hittem az valami kötelező tag. Ha az nincs, akkor nonnan tudja az alapbeállításokat ?
    Mutasd a teljes hozzászólást!
  • Megnézem azokat is majd, lehet. Épp keresgélem, hogy mivel csináljam meg, még nem fix. Ami jobbnak mutatkozik, vagy kézre állóbb, azt fogom választani igencsak.
    Mutasd a teljes hozzászólást!
  • Újabb hibába ütköztem:

    AssertionError at /api/universities/
    ("Creating a ModelSerializer without either the 'fields' attribute or the 'exclude' attribute has been deprecated since 3.3.0, and is now disallowed. Add an explicit fields = '__all__' to the UniversitySerializer serializer.",)


    Ebbe hova is tegyem ?  fields = '__all__'   ezt a sort ?

    from rest_framework import serializers from .models import University, Student class UniversitySerializer(serializers.ModelSerializer): class Meta: model = University class StudentSerializer(serializers.ModelSerializer): class Meta: model = Student

    Közben rájöttem, hogy a djangorestframework verzió nem volt jó, mert az 3.6.2 installálódott és ha 3.2 verziót tettem fel, akkor megjavult  a hiba.

    pip install djangorestframework==3.2

    Szóval szép egy menet, míg egy ilyen weboldalról valami is elindul, ez valahogy nem növeli a pythonba vetett még amúgy se sok hitemet. :)
    Mutasd a teljes hozzászólást!
  • Ahogy folytattam:

    pip install django-rest-swagger    ez fogta és a django-rest-framework verziót ununstallálta és felrakta a legújabbat, úgyhogy elrontota, ami eddig jó volt.

    ebből a django-rest-swagger -ből a 2.1.2 -t teszi fel, de vajon ebből is melyik régebbit kéne, hogy ne rontsa el a 3.2-es másikomat ?

    Szóval haragszok én erre már most eléggé.

    Rákerestem:

    pip install django-rest-swagger==0.3.5             1.9 django-hoz ezt írják, ezzel megy elvileg

    Na, még ezt megnézem, akkor elvileg végigmentem a telepítésen ...

    OK, elindult, na talán most megy a rendszer így.
    Mutasd a teljes hozzászólást!
  • Hali,

    ha most kezdesz ismerkedni akkor a django nem a legjobb választás. Bár lehet, tényleg lehet fejest ugrani rögtön a mély vízbe is, de jobb egy kisebb frameworkkel. A választás szabad és az ismertebbekhez van sok tutorial. (web.py, web2py, tornado, flask, bootle, stb....)

    2; ha külön virtualenv-et használsz, akkor alapból a superuser nem közös. 
    3; ha mindenáron a django-val akarod kezdeni az kell tudnod, hogy az új verzió (1.10) eléggé át lett dolgozva valamint elég sok deprecated funkció kikerült belőle. Kezdőnek a githubról szedett példák elég sok kellemetlenséget tud okozni.
    4; ha pip-el telepítesz, akkor használhatod a pip install -u -r requerements.txt paramcsot.
    5; rest API -hoz legjobb az eve.
    Mutasd a teljes hozzászólást!
  • Hasonloan latom, Flask + SQLAlchemy nagyon utos, bar en React.js-el hasznaltam, es igy nagyon bejovos volt a stack.

    A django tul nagy frameworkot epit, es annyira nem volt kedvem megtanulni a lelkivilagat, bar jol dokumentalt es nem tul bonyolult, de akkor sem. Ami problemat lattam meg vele kapcsolatban, hogy talan a framework nagysaga miatt is, de lassan jonnek be a valtozasok.

    Ami nagy elonye, hogy sok package van djangohoz, de oszinten szolva olyat sosem talaltam, ami megfelelt volna az adott feladathoz es annak igenyeihez, es mindig jott a kerdes, hogy mas kodjat testreszabni jobb-e vagy sajatot irni.
    Mutasd a teljes hozzászólást!
  • Hello!

    Igaz kicsit keson, de talan meg nem tanultad meg a Django-t, akkor probald ki ezt a linket: 

    https://vimeo.com/album/3016728
    web2py, nagyon jo, mert gyorsan tanulhato, sikerelmeny garantalt.

    Jo tanulast !
    Mutasd a teljes hozzászólást!
  • Kösz, nem késő, folyamatosan fog ez most menni szerintem pár hónapig, ezt is megnézem. Akármit nézek, mindig van sikerélmény, valamire mindig rájövök, arra is, hogy mind egyforma a végén az összes technológia hol itt, hol ott előbukkan, úgyhogy ártani nem fog semmi sem.
    Mutasd a teljes hozzászólást!
Ez a téma lezárásra került a moderátor által. A lezárás oka: Tudástárban egy téma – egy kérdés/probléma elv érvényesül.
Tetszett amit olvastál? Szeretnél a jövőben is értesülni a hasonló érdekességekről?
abcd