Delphi 12.2 führte WebBencils vor, eine Skriptbasis, um Text ähnlich der ASP.NET Razor-Technologie zu verarbeiten. Seine primäre Verwendung besteht darin, dynamische HTML aus einer Webbroker -Serveranwendung zu generieren, kann jedoch auf andere Weise verwendet werden, um XML, JSON oder jede Art von Textausgabe aus einer Vorlage zu generieren.
Dieses Repository enthält einige sehr einfache Delphi 12.2-Webbroker-Anwendungen (ausgeführt als Windows-VCL-Programme, die einen Webbrowser starten), um Vorlagen mit den in TPageProducer Komponenten verwendeten T-Tags im HTML- TWebStencilsProcessor zu vergleichen. Alle Projekt- und HTML -Dateien befinden sich in einem Ordner und die beiden Projekte teilen ein Datenmodul für den Zugriff auf die Chinook SQLite -Datenbank (nicht enthalten).
In jeder Anwendung befinden sich fünf Seiten, die identisch aussehen, sodass Sie sich auf die Template -Technologie konzentrieren können:
Die von den beiden Projekten verwiesenen HTML -Dateien sind benannt, um klarzustellen, mit welchem Projekt/der Technologie sie arbeiten:
Herkömmliche PageProducer -Vorlage HTML -Dateien:
index-wbroker.htmlloginfailed-wbroker.htmlcustlist-wbroker.htmlcustedit-wbroker.htmlaccessdenied-wbroker.htmlNEUE WEBSCHENTENCILS -Vorlage HTML -Dateien:
index-wStencils.htmllogin-failed-wStencils.htmlcustlist-wStencils.htmlcustedit-wStencils.htmlaccessdenied-wStencils.htmlcustlistframework1.htmlBeachten Sie, dass es in der Sammlung von WebSbenencils eine weitere Datei gibt. Es handelt sich um eine Framework -Vorlage für jede Webseite, die aus den Webstencils -Aktionen generiert wird und aus den im traditionellen Webbroker -Projekt verwendeten Seitenproduzenten kombiniert wird.
Bevor Sie versuchen, zu kompilieren oder auszuführen, sollten Sie die Chinook -Beispieldatenbank herunterladen. Dies ist eine beliebte Datenbank, die für Tutorials und Demos verwendet wird und an vielen verschiedenen Orten zu finden ist. Ich benutze DBEAVER, ein kostenloses Datenbank -Tool und fand es damit.
Sobald Sie den chinook.db im selben Ordner wie das Projekt haben, müssen Sie das Datenmodul (verwendet von beiden Projekten), udmCust , öffnen und die TFDConnection -Komponente ändern, um den Ort der Datenbankdatei anzugeben. Ich würde auch vorschlagen, ein Datenbank -Tool oder ein Daten -Explorer von Delphi zu verwenden, um die Tabellen in der Datenbank anzuzeigen.
Delphi 12.2 wurde verwendet, um diese Programme zu erstellen und zu testen (die keine Komponenten von Drittanbietern verwenden).
Beide Demos werden als Webserver -Windows -GUI -Programme erstellt, was bedeutet, dass sie als kleines Windows -VCL -Programm ausgeführt werden, das einen Port öffnet, um Webanforderungen mit einer Schaltfläche zu hören, um Ihren Standard -Webbrowser zu starten. Die PageProducer -Version hört auf Port 8081 und die WebBencils -Version auf Port 8082 zu, sodass Sie beide gleichzeitig ausführen können, wenn Sie möchten.
Die erste aufgelistete Seite ist eine Anmeldeseite. Ein gültiges Login muss eingegeben werden, bevor Sie zur Kundenliste gelangen. Eine gültige Anmeldung ist jeder Benutzer in der Tabelle der Mitarbeiter, in der:
FirstName , Fall-unempfindlich;EmployeeId und des LastName , fallsempfindlich .Zum Beispiel hatte der erste Eintrag in der von mir heruntergeladenen Beispieldatenbank den folgenden ersten Mitarbeiter:
ID : 1FirstName : AndrewLastName : AdamsDaher, um sich bei diesem Mitarbeiter anzumelden:
ANDREW (obere oder untere oder gemischte Fall)1Adams (genau)Nach Anmeldung wird die Kundenliste angezeigt. Die ID eines Kunden (links am meisten) ist ein Link, mit dem Sie zu einem Bildschirm "Bearbeiten" führen, auf dem alle Kundenfelder in Bearbeitungsfeldern aufgeführt sind. Die Schaltfläche Senden speichert keine Änderungen oder führt Sie nicht zur Liste der Kunden zurück.
Ich habe zwei verschiedene "Chinook" -Sample -Datenbanken verwendet, einer hatte einzigartige Tischnamen (z. B. "Kunde" und "Mitarbeiter"), während der andere Plural (z. B. " Kundens " und " Mitarbeiter ") hatte. Wenn sich der, den Sie erhalten, anders ist als das in diesem Repository, ändern Sie einfach die übereinstimmenden Tabellennamen und Abfragen.
Die Kundenliste wird mit den alten HTML -Tabellen -Tags ( <table> , <tr> , <td> usw.) erstellt, da dies die einfache und standardmäßige Art und Weise ist, wie die alten Webbroker -Server -Apps, die mit den TDataSetTableProducer -Komponenten erstellt wurden, erstellt wurden. Die neue WebBencils -Version erstellt das gleiche HTML -Ergebnis, sodass Sie vergleichen können, wie es fertig ist, und die resultierenden Webseiten werden nahezu identisch sein. Moderne Websites erstellen typischerweise Tabellen im CSS-Stil, ein Vorteil, der durch Wechsel von DataSetableProducern zu WebSbenecils erzielt werden kann.
Lesen Sie meinen Blog "Feilodinging WebBencils", um mehr über die Technologie hinter diesen Programmen zu erfahren und warum Webstencils cool ist!