, het creëren van een web van toepassing vanaf het begin van de fles en een Python van mysql,,,,,,,,,, 338, 32 aandelen,,,,,,,, de delen van het netwerk, maandag wat tuts + cursussen zullen in de beperkt tot slechts drie dollar.Niet' niet missen, een deel van de prijs van een reeks genaamd het creëren van een web van toepassing vanaf het begin van de fles en een Python van mysql. Het creëren van een Python van flessen en mysql niets van Internet: 2, in deze serie, we gebruiken de Python, flessen en mysql opnieuw om een simpel het web van toepassing.Dit is een simpele lijst van toepassing is, kan de gebruiker zich in en creëer je eigen lijst, deze les is dat je de Python , een elementaire kennis van de taal.We zullen het gebruik van Internet, de fles, de Python kader voor de oprichting van een van onze programma 's, en , van mysql, de achterkant. En de Python flessen, flacons, is voor het creëren van een webapplicatie een Python kader.De officiële website van de fles van,,, is gebaseerd op een Python Microframework Werkzeug, 2 en de goede wil van het heiligdom.,, toen we dachten dat de Python, in feite kader en betrekking heeft op ons hart is django kader.Maar vanuit het oogpunt van de Python beginners, de fles is gemakkelijk te gebruiken, in vergelijking met de , django.,, een fles, flessen, die zeer eenvoudig en snel.PIP, het pakket manager, alles wat we moeten doen is: , PIP, installatie van de fles, als je klaar bent met de installatie van de fles, het creëren van een folder, flaskapp,.Rond, flaskapp, folders, het creëren van een dossier, de toepassing en de,.De invoer, de fles, modules en een aanvraag voor het gebruik van flessen, zoals het creëren van flessen, flacons: invoer van programma 's = (__name__), dat, nu de lijn, /, en de overeenkomstige procedures voor de behandeling van de verzoeken om toepassing van de weg:,, "(" /"), de belangrijkste ():" Welkom terug. ",, de volgende documenten is, het controleren van de uitvoering van de programma 's en de operationele programma' s :,, als __name__ = = "__main__": de toepassing van het (de).,, het behoud en de uitvoering van veranderen, app, en:,,, Python van toepassing. En wat de browser, HTTP://lokale: 50 / moet je is verheugd over de informatie en het creëren van een homepage.,, in de eerste plaats, als de aanvraag dient aan te tonen: een bijgewerkte lijst van de projecten toe te voegen aan de gebruikers.Dus, laten we onze homepage toegevoegd aan onze programma 's in de map.Dus, rond, pythonapp, folders, het creëren van een map, model.In het model, het creëren van een document getiteld: //europa.eu.int /comm /index.Open de /index.html, en wordt de volgende tekst toegevoegd: //europa.eu.int /comm /:,, <.Doctype html> < http: //europa.eu.int lang= "en" > < head> < title> kolf bucket lijst; de Python App< /title> < s: /http://getbootstrap.com/dist/css/bootstrap.min.css "rel =" stylesheet "> < s: /http://getbootstrap.com/examples/jumbotron-narrow/jumbotron-narrow.css" rel = "stylesheet" > < /head> < body> < di = "CONTAINER" > < div = "kop" > < nav> < ul = "NAV nav-pills pull-right" > < li role= "andere" = "actieve" > < a: /"> Home< /a> < /li> <. Role=" andere "> < a: /#" > voor In< /a>< /li> < li role= "andere" > < a: /showSignUp "> voor Up< /a> < /li> < /ul> < /nav> < 3 =" text-muted "> de Python kolf App< /h3> < /div> < div =" jumbotron; "> < h1> bucket lijst App< /h1> < P =" leiden "> < /p> < p> < a =" btn1 btn-lg btn-success ": /showSignUp" role= "knop" > voor een today< /a> < /p> < /div> < de klas van 'brengen; die rij "> < div =" col-lg-6 "> < h4> werden List< /h4>;< p> het ID elite - mi deur in eget stress bij zwangere vrouwen.Maecenas faucibus mollis interdum. < /P > < H4 > de lijst < /H4 > < p> de oorzaken van de leeuw consectetur lachen, de deur van de uitwisseling van informatie - uitwisseling, in de liefde.De bureaus Matisse, zitten consectetur bordetella. < /P > < H4 > de lijst < /H4 > < p> de diameter van de verschillende blandit beschermer SED eget lachen additief zitten. < /P > < /div > < div = "col-lg-6" > LT H4 > de lijst < /H4 > < p> het ID elite - mi deur in eget stress bij zwangere vrouwen.Maecenas faucibus mollis interdum. < /P > < H4 > de lijst < /H4 > < p> de oorzaken van de leeuw consectetur lachen, de deur van de uitwisseling van informatie - uitwisseling, in de liefde.Cras mattis consectetur purus zitten amet fermentum.< /p> < h4> werden List< /h4> < p> Maecenas SED vele eget risus varius blandit zitten amet niet magna.< /p> < /div > < /div> < meter = "meter" > < p> & begrepen; Company 2015< /p> < /footer> < /div> < /body> < /html> open "app.py;,,,, en de invoer, render_template, die we gebruik te maken, het model, van de invoer. De kolf, fles, render_template, wijziging van de belangrijkste methode tot terugkeer, de rendered model.,, - de belangrijkste (): terugkeer render_template ('index.html'), Red de veranderingen en herstarten van de server.Je browser HTTP://lokale: 5000 /u moet de volgende scherm:,,,,, het creëren van in stap 1: de oprichting van een databank, zullen wij met behulp van mysql backend.Dus op mysql commando, of als je favoriete mysql werken, kan je dat gebruiken.Ten eerste, de oprichting van een databank, bucketlist,.Commando: , van mysql, E < gebruikersnaam > P, input - wachtwoord nodig en bij de uitvoering van het creëren van databanken, de oprichting van een databank, bucketlist;,, zodra de databank worden gecreëerd, het creëren van tabel noemen, als tbl_user, zoals aangegeven in tabel bucketlist:,, het creëren van een% quot%% quot% tbl_user.% quot%% quot% (% quot% user_id% quot% bigint lege auto_increment,% quot% user_name% quot% varchar (45)% quot% lege, user_username% quot% varchar (45)% quot% lege, user_password% quot% varchar (45) leeg, primaire (% quot% user_id% quot%)); en we zullen ons gebruik, opslag, de toepassing en de database van de Python. Interactie.Dus, zodra de tabel, tbl_user, is gecreëerd, het creëren van een procedure sp_createuser, de ondertekening van de gebruikers,.,, bij het creëren van een procedure creëren, tbl_user, tabel van de gebruikers, in de eerste plaats moeten wij met dezelfde gebruiker van een gebruikersnaam, al bestaat.Als het bestaat, moeten we aan de gebruiker met een fout in de tabel voor de gebruikers, anders zullen wij het creëren van de gebruiker.Hier is hoe het programma opgeslagen sp_createuser, zie:,, het creëren van een definitie van% quot% REËLE $= wortel% quot% @% quot% localhost% quot% procedure% quot% sp_createuser% quot% (in de p_name varchar (20), in de p_username varchar (20), in de p_password varchar (20), als in optie 1 (keuze van tbl_user (waar user_username = p_username)) en de keuze van de gebruikersnaam.! "; andere ingevoegd tbl_user (user_name, user_username, user_password) waarde (p_name, p_username, p_password); aan het einde van het scheidingsteken; het einde van de dollar; stap 2:,, het creëren van een registratie -, rond, pythonapp /modellen catalogus, het creëren van een: //europa.eu.int /comm /documenten: //europa.eu.int /comm / , de registratie, het.Het volgende toevoegen: //europa.eu.int /comm /code geregistreerd. Http: //europa.eu.int:,, <.Doctype html> < http: //europa.eu.int lang= "en" > < head> < title> kolf bucket lijst; de Python App< /title> < s: /http://getbootstrap.com/dist/css/bootstrap.min.css "rel =" stylesheet "> < s: /http://getbootstrap.com/examples/jumbotron-narrow/jumbotron-narrow.css" rel = "stylesheet" > < s: /../static/signup.css rel = "stylesheet" "> < /head> < body> < div =" CONTAINER "> < div =" kop "> < nav> < ul =" NAV nav-pills pull-right "> < li role=" andere "> < a: /Home<" grote ">; /a> < /li> < li role=" andere "> < a: /#" > voor /a&In<GT; < /li> < li role= "andere" = "actieve" > < a: /"> voor Up< /a> < /li> < /ul> < /nav> < 3 =" text-muted "> De Python kolf App< /h3> < /div> < div =" jumbotron "> < h1> bucket lijst App< /h1> < de vorm van de klas van 'form-signin" > < voor de "inputName" = "sr-only" > Name< /label> < - type = "naam" naam "inputName" = "inputName" = "form-control" placeholder= "naam" die autofocus> < voor de "inputEmail" = "sr-only" > e - mail address< /label> < - type = "e" naam "inputEmail" = "inputEmail" = "form-control")Aceholder= "e - mail adres" die autofocus> < voor de "inputPassword" = "sr-only" > Password< /label> < - type = "password" naam "inputPassword" = "inputPassword" = "form-control" placeholder= "password" required> < knop = "btnSignUp" = "btn1 btn-lg btn-primary btn-block" type = "knop" > voor up< /button> < /form> < /div> < meter = "meter" > < p> & begrepen; Company 2015< /p> < /footer> < /div> < /body> < /html>,, ook nog de volgende, de Wegwijzerdienst, als signup.css, aan de in de PythonApp, een folder,.,, lichaam {padding-top: 40px; padding-bottom: 40px;De ondertekening van de grootste breedte {}. Vorm: 330px; oude 15px; de marge van auto 's: 0;}. Afgifte ondertekend. Vormen van titel afgegeven. Vormen. Een vakje (marge beneden 10 pixels;}. Vorm worden uitgegeven. Een vakje (normale;}. Vorm van controle in de vorm van afgegeven. De positie van de relatief hoge (:;: auto' s; - de bewijzen doos afmetingen: vak, moz. Afmetingen: afmetingen: de grens van grenzen; de doos oude doos; 10 pixels; de lettergrootte: 16px;}. Vorm van controle in de vorm van: de nadruk wordt gelegd op De uitgifte van. {Z - index: 2;}. Vormen in verband met de e - mail "] [type = {marge beneden - 1 - pixel; de onderste grens van rechts de straal van de grens: 0; onder de straal: 0;}. Vorm in verband met de input (type =" password "] {marge beneden de grens van 10 pixels, straal: 0; rechts: 0; de straal.},,, app.py, nog een andere methode, showsignup, om een verzoek tot registratie van pagina 's, /showsignup:,,, "app. Route (/showsignup"): terug naar de render_template def. Showsignup () ('signup. Http: //europa.eu.int), wijzigingen en de hervatting van de server.Druk op de knop, de registratie, het op de voorpagina, je moet de registratie van pagina 's zoals aangegeven: ,,,,, de uitvoering van stap 3: methode van registratie, , en we moeten een BU interactie en mysql de methode van de server.Dus, rond, en pythonapp, open, app.Het creëren van een nieuwe methode, registratie en de toevoeging van een route /geregistreerd.Hier, het ziet er is, hoe @: toepassing. Route ("/register"), signup ():# tot de code hier zullen zijn.!, en we zullen dit na de registratie van gegevens over de Ajax we, registratie, methoden, dus we gaan in de aangegeven weg omschreven methode.,, "van toepassing is. De routes (" /registratie van'post] = [methode), signup ():# tot de code hier zullen zijn.!,, om te kijken naar de waarde van de invoer op verzoek van ons nodig, en de fles van flessen ingevoerde flessen.,,, render_template, verzoeken, , te gebruiken, kunnen we de waarde van lezen en stuurt het als volgt:,, 'app. Route ("/geregistreerd, voor'post] = ["), signup (de):# lezen op de waarde van de bu _name = verzoek []. Vorm van'inputname _email = verzoek []. Vorm van'inputemail _password = verzoek. Vorm van'inputpassword] [, zodra de waarde, en we kunnen alleen effectief te controleren of zij is de tijd terug te keren Naar een eenvoudige boodschap:,, "(" de route van app. /registratie, methode = ['post "]), signup ():# lezen op de waarde van de bu _name = verzoek []. Vorm van'inputname _email = verzoek. Vorm van'inputemail _password = request.for []Ik'inputpassword] [# te ontvangen of de waarde van de _name en _email en _password: terug naar hola. Dump ({'html: "< span% GT% van elk gebied.! < Kruis > "}) andere: terug naar de hola. Dump ({'html:" < span > in de vereiste velden < Kruis > "}), invoer, hola, uit de fles, aangezien we met een code van het in de gegevens van de fles terug hola, invoer hola, flessen, render_template, op verzoek, stap 4: het creëren van een verzoek tot registratie, gebruiken we dit verzoek om inschrijving van de Ajax sturen naar de methode van de Python.DOWNLOAD plaats:, naar binnen, pythonapp /statische /js, en van de registratie van het toevoegen van een link naar het.Als dit zijn opgenomen, zullen we nog een verzoek:,, als je op de knop, de registratie, het,, dus laten we het geregistreerde knop klikken zoals aangegeven:,, (functie) dollar {% ("# btnsignup"). Daarna (functie) ($. Ajax ({http: /registratie van gegevens: ("-" dollar). Problemen (), type: "na" succes: functie (reactie) {console logboek (reactie);}, fout: functie (fouten) {console logboek (fouten);}} {})););,, het behoud van alle wijzigingen; en de hervatting van de server.Van de "geregistreerd", "pagina 's", "informatie", "goed", "Register".Controleer de browser Console, je moet de volgende informatie:,, (http: //europa.eu.int: "< span% GT% van elk gebied.! < Kruis > "), en stap 5: bel opslag van mysql, , zodra we, namen, e - mail, wachtwoord,,,, we kunnen noemen van mysql opslag tot het creëren van nieuwe gebruikers.,, met een mysql, gebruiken we de fles van mysql, dat De uitbreiding is een fles.Om te beginnen, de fles, de installatie en het gebruik van mysql, PIP, PIP, manager, pakket: installatie van de fles van mysql, de invoer van mysql, app, en, in flask.ext.mysql:,, invoer van mysql, toen we eerder definities voor de toepassing van de procedure zoals aangegeven:,, programma 's = fles (__name__), met inbegrip van mysql, langs deze configuratie:,, mysql = mysql ()mysql configuratie van toepassing ['mysql_database_user toewijzing "] =" Jay "van toepassing ['mysql_database_password toewijzing"] = "Jay" de aanvraag "] = ['mysql_database_db toewijzing van" bucketlist programma. De configuratie van'mysql_database_host "[] = localhost" init_app (mysql. Aanvragen),, in de eerste plaats, laten we het creëren van mysql verband:,,, conn, = mysql. Verbinden (), zodra de verbinding tot stand is gebracht, verzoeken wij de cursor, vraag ons geheugen.Dus, het gebruik, de verbonden, het creëren van een cursor cursor =, Connecticut, cursor (), de oproep tot de gebruikers voor de opslag van, laten we het gebruik van de machine het wachtwoord van medewerkers van zout.De invoering van modules, de toepassing en de invoer van machines:,,, generate_password_hash, check_password_hash, met zouten module, een wachtwoord.,, _hashed_password = generate_password_hash (_password), en nu, laten we ons programma , sp_createuser,:,, toe. Callproc ('sp_createuser "(_name, _email, _hashed_password)), en als de procedures voor de tenuitvoerlegging van het succes van de indiening van wijzigingen, dan zullen we terug naar succes en nieuws. , gegevens = cursor. Fetchall () als de len (data) 0: terug naar Connecticut plegen () {" hola. Dump (nieuws: een gebruiker succes. "}) andere: terug naar de hola. Dump ({fout: STR (gegevens [0])}), wijzigingen en de hervatting van de server.Naar de registratie van pagina 's, de vermelding van de naam en het e - mailadres,,,,,., daarna op de geregistreerde knop.Op het succes van de gebruiker, ziet u een bericht op je browser Console, {"nieuws": "de gebruiker met succes gemaakt."}, verpakt, in deze handleiding, zagen we hoe te beginnen met het creëren van een webapplicatie Python van mysql, flessen en flacons, , mysql, uit te breiden.We creëren en ontwerp - databank en de opslag van , de verwezenlijking van de registratie.In de volgende les, zullen we op de functionele en door de verwezenlijking van een andere functie heeft deze reeks van een nieuw niveau van deze handleiding.,, de bron kan worden github.,, laten we in de volgende opmerkingen weten wat je denkt.