Dahil mayroon akong ilang libreng oras upang magpahinga (mula sa paggawa ng mga proyekto o paglalaro ng ilang sandali), napagpasyahan kong isulat ang artikulong ito (o marahil mga artikulo) tungkol sa pagbuo ng web sa Flask (Python). Hindi ako titigil upang ipaliwanag kung ano ang Flask, ipinapaliwanag nila iyon sa Hypertext at ipinapaliwanag nila ito nang mas mahusay kaysa sa akin.
Instalasyon
Sa puntong ito (anuman ang operating system na ito) dapat mayroon na tayong naka-install na Python, kaya kailangan lang nating mai-install ang Flask
$ sudo pip install Flask
Madali di ba
Kamusta Mundo
Sa Flask maaari naming likhain ang klasikong "Hello World" sa sumusunod na paraan:
Nai-save lamang namin ang aming code bilang hello.py at pinapatakbo ito
$ python hello.py
* Running on http://localhost:5000/
Ang aming application ay tumatakbo sa http: // localhost: 5000 /
Napakadali, tama?
Isang simpleng blog
Hakbang 0: paglikha ng mga folder
Bago kami magsimula, kailangan namin ang mga sumusunod na folder para sa aming aplikasyon:
Ang folder ng Project ay maaaring magkaroon ng anumang pangalan na nais mo, ito lamang ang folder kung saan magkakaroon ka ng iyong aplikasyon. Sa static na folder ay magiging mga file na magagamit sa mga gumagamit sa pamamagitan ng HTTP. Iyon ang lugar kung saan dapat mong ilagay ang iyong mga file ng css at js. Ang folder ng mga template ay kung nasaan ang mga template (ang html5) ng iyong aplikasyon.
Hakbang I: Iskema ng database
Lilikha muna kami ng database schema. Para sa application na ito kakailanganin lamang namin ng isang database. Ipasok lamang ang sumusunod na code sa isang file na pinangalanang "schema.sql" sa folder ng Project.
Ang pamamaraan na ito ay binubuo ng isang solong talahanayan na tinatawag na mga input at ang bawat hilera ng talahanayan na ito ay may isang ID, isang pamagat at isang teksto. Ang ID na ito ay isang auto incrementing integer at isang pangunahing key, ang dalawa pa ay mga string.
Hakbang II: Paunang code ng aplikasyon
Ngayon na mayroon kaming eskematiko maaari naming lumikha ng module ng aplikasyon. Tawagin natin itong flaskr.py, na dapat nasa loob ng folder ng Project. Upang magsimula ay idaragdag namin ang mga kinakailangang pag-import, pati na rin ang seksyon ng pagsasaayos. Sa maliliit na application maaari nating iwan ang direkta sa pagsasaayos sa modyul na gagawin natin. Gayunpaman, ang pinakamahusay at pinaka tama ay ang lumikha ng isang .ini o .py file na pagsasaayos, i-load ito at i-import ang mga halaga mula doon.
Sa flaskr.py file:
Kinakailangan ang lihim_key upang mapanatiling ligtas ang mga session. Maingat na piliin ang key na ito. Pinapagana o hindi pinagana ng flag ng pag-debug ang interactive na debugger. Huwag kailanman pabayaan ang pag-debug na pinagana sa isang sistema ng produksyon, dahil papayagan nito ang mga gumagamit na magpatakbo ng code sa iyong server!
Ngayon ay maaari naming likhain ang aming application at magsimula sa pagsasaayos sa flaskr.py:
Magdaragdag din kami ng isang pamamaraan upang madaling kumonekta sa tinukoy na database. Maaari itong magamit upang buksan ang isang koneksyon kapag hiniling. Darating din ito sa madaling panahon.
Sa wakas ay nagdagdag kami ng isang linya sa dulo ng file na isasagawa ng server kung nais naming ipatupad ang file bilang isang independiyenteng aplikasyon:
Gamit iyon dapat mong mailunsad ang application nang walang mga problema. Ginagamit namin ang sumusunod na utos:
$ python flaskr.py
Makakakita ka ng isang mensahe na nagpapahiwatig na ang server ay nagsimula kasama ang URL.
Kung mai-access namin ang URL, bibigyan kami ng isang 404 error, dahil wala pa kaming isang website. Ngunit magtutuon tayo doon nang kaunti. Una dapat nating gawin ang database na gumagana.
Kumusta, salamat sa artikulo. Ano sa tingin mo tungkol sa pagkakaroon ng lahat ng mga ruta na magkasama sa istilong Django? Ano ang mga pakinabang sa pagkakaroon ng ruta para sa bawat pagpapaandar sa istilo ng Express, Flask o Botilya?
Hindi ko pa nasubukan si Django (Patayin mo ako kung gusto mo) ngunit masasabi kong para ito sa kaginhawaan ng sinumang magprograma. (Itama mo ako kung mali ako)
Ang artikulo ay hindi natapos !! Sino ang naglakas-loob na i-post ito? D:
Ang mga pagkakamali sa pagbaybay tulad ng pagtakas ng "conciste", ang parehong may-akda sa kanyang komento ay nagsasabing "Corriganme", masarap na mai-install ang isang spell checker at tingnan ang mga pulang guhit na lilitaw sa ilalim ng ilang mga salita. Totoo din na hindi niya natapos itong isulat at samakatuwid ay suriin ito.
Sa palagay ko hindi lamang ako ang nagmukhang isang asshole na naghahanap para sa susunod na pindutan ... upang i-on ang pahina na "o kung ano."
Sana mas maraming dumating, napakahusay na trabaho