makemigrations vs. migrate
Miten Django suunnittelee ja toteuttaa skeeman muutokset
makemigrations vs. migrate on ilmainen Django Academy-oppitunti CoddyKitissä. Tämä on oppitunti 1/4. Voit lukea tästä oppimispolusta kokonaan mitkä tahansa 3 oppituntia ilmaiseksi — sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä käytännön harjoittelun sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Oppitunti kuuluu Django Academy-oppimispolkuun, ja edistymisesi synkronoituu verkon ja CoddyKit-sovelluksen välillä. Django Academy-kurssilla on yhteensä 4 oppituntia.
Kaksi vaihetta, ei yksi
Django muuttaa tietokantaa kahdessa vaiheessa: ensin se kirjoittaa suunnitelman ja sitten suorittaa sen. Kun tiedät, kumpi vaihe on kyseessä, vältyt monelta sekaannukselta. 🧭
makemigrations suunnittelee
makemigrations tarkastelee mallejasi, huomaa muutokset ja kirjoittaa muutoksen kuvaavan migraatiotiedoston. Se ei vielä koske tietokantaan.
python manage.py makemigrationsmigrate ottaa käyttöön
migrate ottaa migraatiotiedostot ja suorittaa ne tietokantaa vasten luoden tai muuttaen oikeita tauluja.
python manage.py migrateMiksi vaiheet erotetaan
Suunnitelman ja toiminnon erottaminen antaa sinun tarkistaa muutoksen, tallentaa sen gitiin ja ottaa täsmälleen samat vaiheet käyttöön jokaisella koneella ja palvelimella.
Migraatiot ovat tiedostoja
Jokainen suunnitelma tallennetaan sovelluksesi migrations/-hakemistoon tiedostona. Talletat nämä tiedostot, jotta kaikki tiimin jäsenet ottavat käyttöön samat muutokset.
Tyypillinen työnkulku
Muokkaa mallia, suorita makemigrations muutoksen tallentamiseksi ja suorita sitten migrate sen käyttöönottoa varten. Tämä muodostaa päivittäisen skeeman työnkulun.
Migraatioiden nimeäminen
Lisää selkeä kuvaus, jotta tiedostot näyttävät historialta eivätkä numeropinolta. Käytä --name-valitsinta kuvaamaan muutosta.
python manage.py makemigrations --name add_published_fieldKohdista yhteen sovellukseen
Anna sovelluksen nimi, jotta migraatiot luodaan tai otetaan käyttöön vain kyseiselle sovellukselle ja erilliset muutokset pysyvät poissa tieltä.
python manage.py makemigrations blogTarkista muuttamatta mitään
Suorita makemigrations --check-valitsimella CI:ssä, jotta koonti epäonnistuu, jos mallimuutokselle ei vielä ole vastaavaa migraatiota.
python manage.py makemigrations --check --dry-runNäe käytössä olevat migraatiot
showmigrations-komento luettelee kaikki migraatiot ja merkitsee käytössä olevat X-kirjaimella, joten näet tarkan tilan.
python manage.py showmigrationsJärjestyksellä on väliä
Suorita aina ensin makemigrations ja sitten migrate. Pelkkä migrate ottaa käyttöön kaikki olemassa olevat suunnitelmat, myös Djangon omat.
Pikatarkistus
Mikä komento todella muuttaa tietokantatauluja?
Kertaus
Opit työnkulun: makemigrations kirjoittaa suunnitelman ja migrate ottaa sen käyttöön. Suunnittele ensin, ota käyttöön toisena, niin skeema pysyy kaikkialla ajan tasalla. 🎉
Opi Python tekoälytuutorin avulla — ilmaiseksi
Kirjoita ja suorita oikeaa koodia selaimessa, saa välitöntä apua tekoälytuutorilta ympäri vuorokauden ja jatka siitä, mihin jäit, verkossa tai sovelluksessa.
- Kurssit
- 30
- Oppitunnit
- 120
Usein kysytyt kysymykset
Onko oppitunti ”makemigrations vs. migrate” ilmainen?
Kyllä — voit lukea täällä verkossa kokonaan ilmaiseksi mitkä tahansa Django Academy-oppimispolun 3 oppituntia, myös oppitunnin “makemigrations vs. migrate”. Sen jälkeen CoddyKit PRO avaa kaikki oppitunnit sekä interaktiiviset harjoitukset sisäänrakennetulla koodieditorilla ja ympäri vuorokauden toimivalla tekoälytuutorilla. Django Academy-kurssilla on yhteensä 4 oppituntia.
Mitä opin oppitunnilla ”makemigrations vs. migrate”?
Miten Django suunnittelee ja toteuttaa skeeman muutokset Harjoittelet Django Academy-aihetta koodilla, jonka suoritat suoraan selaimessa. Ympäri vuorokauden käytettävissä oleva tekoälytuutori vastaa kysymyksiisi oppitunnin aikana.
Tarvitsenko kokemusta aloittaakseni Django Academy-opiskelun?
Aiempi kokemus ei ole tarpeen. CoddyKitin Django Academy-oppimispolku sopii vasta-alkajista edistyneisiin, joten voit aloittaa tästä tai alusta ja edetä omaan tahtiisi. Tämä on oppitunti 1/4.
Kuinka kauan ”makemigrations vs. migrate”-oppitunnin suorittaminen kestää?
Useimmat CoddyKitin oppitunnit kestävät noin 5–10 minuuttia. Jokainen oppitunti on lyhyt ja interaktiivinen, joten edistyt tasaisesti ja voit jatkaa siitä, mihin jäit – sekä verkossa että sovelluksessa.
Voinko kirjoittaa ja suorittaa koodia tällä Django Academy-oppitunnilla?
Kyllä. Jokainen Django Academy-oppitunti sisältää sisäänrakennetun koodieditorin, joten voit kirjoittaa ja suorittaa oikeaa koodia suoraan selaimessa ja saada välitöntä palautetta tekoälyltä – paikallista asennusta ei tarvita.
Kaikki tämän kurssin oppitunnit
- makemigrations vs. migrate
- Migraatiotiedoston lukeminen
- Mallin muuttaminen ja uusi migraatio
- sqlmigrate ja SQL:n tarkastelu