Oppdatert: 16. januar 2019
Lær ved å gjøre
min foretrukne måte å lære på er å lære ved å gjøre. Jeg kan lese og se ting hele dagen, men til jeg kommer ned og skitne med koden, synker den egentlig ikke inn. En fin måte å lære ved å gjøre er å bygge en app, så det er det vi skal gjøre!
det vil ikke være et høyt nivå oversikt som forklarer alt som skjer. Det er mer en gjennomgang for de som har litt kjennskap Til Elixir og Phoenix, men har ennå ikke bygget sin første app. Jeg bruker Phoenix 1.4 Og Elixir 1.8 for denne opplæringen.
funksjonaliteten vil være enkel. Du kan opprette en konto. Du kan søke og se videoer. Du kan legge til nye videoer. Det vil være noen kompleksiteter som å få informasjon fra YouTube API for å legge til videoer og bruke Tailwind CSS i stedet for standard Milligram (Milligram erstattet Bootstrap I Phoenix 1.4). Men siden jeg allerede har gått gjennom bryet med å bekjempe koden for å få ting til å fungere, bør alt gå greit for deg.
Gi meg beskjed hvis du sitter fast på noe punkt, og jeg vil gjerne hjelpe deg ut. La oss komme i gang!
MERK: hvis du står fast på noe punkt, kan du la meg en kommentar eller sjekke ut repo På GitHub. Hver del har sin egen gren og vil bli koblet i begynnelsen med (GitHub). Det vil også være forplikte hashes hele slik at du kan se hva som ble gjort for en bestemt del. De vil se ut som nedenfor (70ea207). Hvis de er i en underposisjon, commit gjelder alle denne delen. Ellers vil innleggingen bli delt på slutten av den aktuelle teksten.
Generer appen (70ea207) (GitHub)
Vi skal bygge Catcasts. Det vil være et sted å dele dine Favoritt YouTube kattevideoer. Brukeren vil bli opprettet ved å logge På Med Google. Videoene vil bli opprettet ved å legge UT EN URL Til YouTube API og få informasjonen tilbake. Denne informasjonen vil bli brukt til å lage en side med videoen innebygd.
hvis Du ikke Allerede har Elixir og Phoenix installert, kan du følge Elixir guide og Phoenix guide. Nå antar det er gjort, tid til å lage vår app. Vi kjørermix phx.new catcasts
for å generere appen vår, og når den spør » Hent og installer avhengigheter? «vi vil si»y».
Sett Opp Postgres (975847b)
på slutten av vår app blir generert, får vi noen nyttige instruksjoner om hva vi trenger å gjøre videre.
det første vi må gjøre etter at vi kjører cd catcasts
og før vi kjører mix ecto.create
div > er konfigurere vår database. Avhengig av hvordan du har ditt lokale Postgres-oppsett, er det en god sjanse for ditt lokale miljø brukernavnet er ditt hjemmekatalog (for meg ville det være thebrianemory), og passordfeltet ditt er tomt. La oss åpne vår config/dev.exs
fil og konfigurere vår database.
Merk: Hvis Du Ikke Har Postgres satt opp på din lokale maskin, Har Heroku en nyttig guide for å få det satt opp. Hvis Du bruker Homebrew, kan du i stedet kjøre brew install postgresql
i kommandolinjen.
du kan deretter kjøre mix ecto.create
, din app vil kompilere, og så vil du se den fantastiske meldingen, » databasen For Catcasts.Repo har blitt opprettet.»På dette punktet kan du kjøre mix phx.server
og besøke http://localhost:4000 for å se » Velkommen Til Phoenix!»
MERK: hvis du ser en melding som ligner på «Skal jeg installere rebar3? (hvis du kjører ikke-interaktivt, bruk » mix local.rebar-force»)», gå videre og velg «y».
Vi har også tre tester som ble opprettet med app som for tiden passerer. For å se dem passere, må vi først også oppdatere våre databaseinnstillinger i config/test.exs
.
du kan nå kjøre testene ved hjelp avmix test
(appen din vil kompilere før du kjører testene) og se den nydelige grønne teksten «3 tester, 0 feil».