Ruby on Rails - Framework
Ein Framework ist ein Programm, eine Reihe von Programmen und / oder eine Codebibliothek, die den größten Teil Ihrer Anwendung für Sie schreibt. Wenn Sie ein Framework verwenden, besteht Ihre Aufgabe darin, die Teile der Anwendung zu schreiben, mit denen sie die gewünschten Aufgaben ausführt.
Wenn Sie eine Rails-Anwendung schreiben möchten, ohne die Konfiguration und andere Reinigungsaufgaben zu berücksichtigen, müssen Sie drei Hauptaufgaben ausführen:
Describe and model your application's domain- Die Domain ist das Universum Ihrer Anwendung. Die Domain kann ein Musikgeschäft, eine Universität, ein Dating-Service, ein Adressbuch oder ein Hardware-Inventar sein. Hier müssen Sie also herausfinden, was darin enthalten ist, welche Entitäten in diesem Universum existieren und in welcher Beziehung die darin enthaltenen Elemente zueinander stehen. Dies entspricht der Modellierung einer Datenbankstruktur, um die Entitäten und ihre Beziehung beizubehalten.
Specify what can happen in this domain- Das Domänenmodell ist statisch. du musst es dynamisch machen. Adressen können einem Adressbuch hinzugefügt werden. Musiknoten können in Musikgeschäften gekauft werden. Benutzer können sich bei einem Dating-Service anmelden. Studenten können sich für Kurse an einer Universität anmelden. Sie müssen alle möglichen Szenarien oder Aktionen identifizieren, an denen die Elemente Ihrer Domäne teilnehmen können.
Choose and design the publicly available views of the domain- An diesem Punkt können Sie anfangen, in Webbrowsern zu denken. Sobald Sie entschieden haben, dass Ihre Domain Schüler hat und diese sich für Klassen registrieren können, können Sie sich eine Begrüßungsseite, eine Registrierungsseite und eine Bestätigungsseite usw. vorstellen. Jede dieser Seiten oder Ansichten zeigt dem Benutzer, wie die Dinge aussehen an einem bestimmten Punkt stehen.
Basierend auf den oben genannten drei Aufgaben befasst sich Ruby on Rails mit einem MVC-Framework (Model / View / Controller).
Ruby on Rails MVC Framework
Das Model View CDas Ontroller-Prinzip unterteilt die Arbeit einer Anwendung in drei separate, aber eng kooperative Subsysteme.
Modell (ActiveRecord)
Es verwaltet die Beziehung zwischen den Objekten und der Datenbank und übernimmt die Validierung, Zuordnung, Transaktionen und mehr.
Dieses Subsystem ist in der ActiveRecord-Bibliothek implementiert, die eine Schnittstelle und Bindung zwischen den Tabellen in einer relationalen Datenbank und dem Ruby-Programmcode bereitstellt, der Datenbankdatensätze bearbeitet. Ruby-Methodennamen werden automatisch aus den Feldnamen von Datenbanktabellen generiert.
Ansicht (ActionView)
Es handelt sich um eine Darstellung von Daten in einem bestimmten Format, die durch die Entscheidung eines Controllers ausgelöst wird, die Daten darzustellen. Sie sind skriptbasierte Vorlagensysteme wie JSP, ASP, PHP und sehr einfach in die AJAX-Technologie zu integrieren.
Dieses Subsystem ist in der ActionView-Bibliothek implementiert, einem auf Embedded Ruby (ERb) basierenden System zum Definieren von Präsentationsvorlagen für die Datenpräsentation. Jede Webverbindung zu einer Rails-Anwendung führt zur Anzeige einer Ansicht.
Controller (ActionController)
Die Funktion innerhalb der Anwendung, die den Datenverkehr einerseits leitet, die Modelle nach bestimmten Daten abfragt und andererseits diese Daten (Suchen, Sortieren, Versenden von Nachrichten) in einer Form organisiert, die den Anforderungen einer bestimmten Ansicht entspricht.
Dieses Subsystem ist in ActionController implementiert, einem Datenbroker zwischen ActiveRecord (der Datenbankschnittstelle) und ActionView (der Präsentations-Engine).
Bildliche Darstellung des MVC Framework
Im Folgenden finden Sie eine bildliche Darstellung von Ruby on Rails Framework -
Verzeichnisdarstellung von MVC Framework
Unter der Annahme einer Standard-Standardinstallation über Linux können Sie diese folgendermaßen finden:
tp> cd /usr/local/lib/ruby/gems/2.2.0/gems
tp> ls
Sie sehen Unterverzeichnisse, einschließlich (aber nicht beschränkt auf) die folgenden:
- actionpack-x.y.z
- activerecord-x.y.z
- rails-x.y.z
Über eine Windows-Installation können Sie sie so finden -
tp>cd ruby\lib\ruby\gems\2.2.0\gems
ruby\lib\ruby\gems\2.2.0\gems\>dir
Sie sehen Unterverzeichnisse, einschließlich (aber nicht beschränkt auf) die folgenden:
ActionView und ActionController werden unter ActionPack gebündelt.
ActiveRecord bietet eine Reihe von Programmiertechniken und Verknüpfungen zum Bearbeiten von Daten aus einer SQL-Datenbank. ActionController und ActionView bieten Funktionen zum Bearbeiten und Anzeigen dieser Daten. Rails bindet alles zusammen.