Web2py - Wprowadzenie

web2pyjest zdefiniowany jako bezpłatna platforma internetowa typu open source do zwinnego programowania, która obejmuje aplikacje internetowe oparte na bazach danych; jest napisany w Pythonie i programowalny w Pythonie. Jest to framework z pełnym stosem; składa się ze wszystkich niezbędnych komponentów, programista musi zbudować w pełni funkcjonalną aplikację internetową.

web2py Framework jest zgodny z Model-View-Controller wzorzec uruchamiania aplikacji internetowych w przeciwieństwie do tradycyjnych wzorców.

  • Modelto część aplikacji zawierająca logikę danych. Obiekty w modelu służą do pobierania i przechowywania danych z bazy danych.

  • Viewto część aplikacji, która pomaga w wyświetlaniu danych użytkownikom końcowym. Wyświetlane dane są pobierane z modelu.

  • Controllerjest częścią aplikacji, która obsługuje interakcję użytkownika. Kontrolery mogą odczytywać dane z widoku, sterować danymi wejściowymi użytkownika i wysyłać dane wejściowe do określonego modelu.

  • web2pyma wbudowaną funkcję zarządzania plikami cookie i sesjami. Po zatwierdzeniu transakcji (w zakresie SQL) sesja jest również przechowywana jednocześnie.

  • web2pyma możliwość wykonywania zadań w zaplanowanych odstępach czasu po wykonaniu określonych czynności. Można to osiągnąć za pomocąCRON.

web2py - przepływ pracy

Spójrz na poniższy diagram przepływu pracy.

Schemat przepływu pracy opisano poniżej.

  • Plik Models, Views i Controller komponenty tworzą aplikację użytkownika web2py.

  • Wiele aplikacji może być hostowanych w tej samej instancji web2py.

  • Przeglądarka wysyła żądanie HTTP do serwera, z którym współpracuje serwer Model, Controller i View aby pobrać niezbędne dane wyjściowe.

  • Strzałki reprezentują komunikację z silnikiem (-ami) bazy danych. Zapytania do bazy danych można pisać w surowym języku SQL lub przy użyciu warstwy abstrakcji bazy danych web2py (która zostanie omówiona w dalszych rozdziałach), tak abyweb2py kod aplikacji jest niezależny od dowolnego silnika bazy danych.

  • Model nawiązuje połączenie bazy danych z bazą danych i współdziała z Controller. PlikController z drugiej strony współdziała z View renderowanie wyświetlania danych.

  • Plik Dispatchermapuje żądany adres URL podany w odpowiedzi HTTP na wywołanie funkcji w kontrolerze. Dane wyjściowe funkcji mogą być ciągiem znaków lub tabelą skrótów.

  • Dane są renderowane przez View. Jeśli użytkownik zażąda strony HTML (ustawienie domyślne), dane są renderowane na stronie HTML. Jeśli użytkownik zażąda tej samej strony w XML, web2py próbuje znaleźć widok, który może renderować słownik w XML.

  • Obsługiwane protokoły web2py obejmują HTML, XML, JSON, RSS, CSV i RTF.

Kontroler widoku modelu

Plik model-view-controller reprezentacja web2py jest następująca -

Model

"db.py" is the model:
db = DAL('sqlite://storage.sqlite')
db.define_table(employee, Field('name'), Field(‘phone’))

Plik Modelzawiera logikę danych aplikacji. Łączy się z bazą danych, jak pokazano na powyższym rysunku. Weź pod uwagę, że SQLite jest używany i jest przechowywany wstorage.sqliteplik z tabelą zdefiniowaną jako pracownik. Jeśli tabela nie istnieje, web2py pomaga, tworząc odpowiednią tabelę.

Kontroler

Program "default.py" jest Controller.

def employees():
   grid = SQLFORM.grid(db.contact, user_signature = False)
   return locals()

W web2py, Mapowanie adresów URL pomaga w dostępie do funkcji i modułów. W powyższym przykładzie kontroler zawiera jedną funkcję (lub „akcję”) zwaną pracownikami.

Akcja wykonana przez Controller zwraca ciąg znaków lub słownik Pythona, będący kombinacją klucza i wartości, w tym lokalny zestaw zmiennych.

Widok

"default/contacts.html" jest View.

{{extend 'layout.html'}}
<h1>Manage My Employees</h1>
{{=grid}}

W podanym przykładzie View wyświetla dane wyjściowe po wykonaniu skojarzonej funkcji kontrolera.

Celem tego Viewjest renderowanie zmiennych w słowniku, który ma postać HTML. PlikView plik jest napisany w HTML, ale osadza kod Pythona za pomocą {{ and }} ograniczniki.

Kod osadzony w HTML składa się z kodu Pythona w słowniku.

Zacznij od web2py

web2py jest dostarczany w pakietach binarnych dla wszystkich głównych systemów operacyjnych, takich jak Windows, UNIX i Mac OS X.

Instalacja web2py jest łatwa, ponieważ -

  • Składa się z interpretera Pythona, więc nie musisz go wstępnie instalować. Istnieje również wersja kodu źródłowego, która działa we wszystkich systemach operacyjnych.

  • Poniższy link zawiera binarne pakiety web2pydo pobrania zgodnie z potrzebami użytkownika - www.web2py.com

  • Plik web2pyFramework nie wymaga wstępnej instalacji w przeciwieństwie do innych frameworków. Użytkownik musi pobrać plik zip i rozpakować zgodnie z wymaganiami systemu operacyjnego.

  • Plik web2py Framework jest napisany w Pythonie, który jest kompletnym językiem dynamicznym, który nie wymaga żadnej kompilacji ani skomplikowanej instalacji do uruchomienia.

  • Wykorzystuje maszynę wirtualną, podobnie jak inne języki programowania, takie jak Java lub .net, i może w przejrzysty sposób kompilować bajtowo kod źródłowy napisany przez programistów.

System operacyjny Komenda
Unix i Linux (dystrybucja źródeł) python web2py.py
OS X (dystrybucja binarna) otwórz web2py.app
Windows (binarna dystrybucja web2py) web2py.exe
Windows (źródłowa dystrybucja web2py) c: /Python27/python.exe web2py.py