Rheinwerk Computing < openbook > Rheinwerk Computing - Professionelle Bücher. Auch für Einsteiger.
Professionelle Bücher. Auch für Einsteiger.

Inhaltsverzeichnis
Geleitwort des Fachgutachters
Einleitung
1 Einführung
2 Installation
3 Erste Schritte
4 Einführung in Ruby
5 Eine einfache Bookmarkverwaltung
6 Test-Driven Development
7 Rails-Projekte erstellen
8 Templatesystem mit ActionView
9 Steuerzentrale mit ActionController
10 Datenbankzugriff mit ActiveRecord
11 E-Mails verwalten mit ActionMailer
12 Nützliche Helfer mit ActiveSupport
13 Ajax on Rails
14 RESTful Rails und Webservices
15 Rails mit Plug-ins erweitern
16 Performancesteigerung
17 Sicherheit
18 Veröffentlichen einer Rails-Applikation auf einem Server
Ihre Meinung?

Spacer
 <<   zurück
Ruby on Rails 2 von Hussein Morsy, Tanja Otto
Das Entwickler-Handbuch
Buch: Ruby on Rails 2

Ruby on Rails 2
geb., mit DVD
699 S., 39,90 Euro
Rheinwerk Computing
ISBN 978-3-89842-779-1
Online bestellenPrint-Version jetzt bestellen
* versandkostenfrei in (D) und (A)
Pfeil 6 Test-Driven Development
  Pfeil 6.1 Was ist TDD?
  Pfeil 6.2 Vorstellung des Projekts
  Pfeil 6.3 Projekt erstellen und konfigurieren
  Pfeil 6.4 Unit-Tests
  Pfeil 6.5 Functional-Tests erstellen
  Pfeil 6.6 Autotest
  Pfeil 6.7 Referenz


Rheinwerk Computing - Zum Seitenanfang

6.2 Vorstellung des Projekts  topZur vorigen Überschrift

Wir werden ein Verwaltungssystem für die Flüge der fiktiven Fluggesellschaft Railsair entwickeln.

Jeder Flug (»flight«) hat einen Abflughafen (»departure_airport«) und ein Zielflughafen (»arrival_airport«). Außerdem wird jeder Flughafen einem Land (»country«) zugeordnet.

Um das realisieren zu können, müssen mehrere Models miteinander interagieren:

Abbildung  UML Railsair

Wir werden drei Models für unsere Beispielapplikation erstellen:

  • Country (Datenbanktabelle countries )
  • Airport (Datenbanktabelle airports )
  • Flight (Datenbanktabelle flights )

Ein Airport hat einen code (dreistelliger Flughafencode, z. B. MUC für München oder DUS für Düsseldorf), einen Namen, und er gehört zu einem Land. Da sich mehrere Flughäfen in einem Land befinden können, hat ein Country keinen oder mehrere Airports, und jeder Airport gehört zu genau einem Land. Das heißt, es handelt sich von Country aus gesehen um eine 1:n-Beziehung zwischen Country und Airport.

Fremdschlüssel

Diese Beziehung wird über das Feld country_id in der Tabelle airports (Klasse Airport) hergestellt. Die Benennung des Feldes folgt der Konvention modelname_id.

Abbildung  Country-Airport-Relation

Wir benötigen noch weitere Relationen, um unser Projekt abbilden zu können:

1:n-Relation

Ein Airport hat keine oder mehrere Flüge, was einer 1:n-Relation zwischen Airport und Flight entspricht. Ein Flug hat einen Abflughafen und einen Ankunftsflughafen, die beide eine Relation zu Airport haben. Da es sich um zwei Verweise auf einen Flughafen handelt, können wir die zugehörigen IDs nicht nach der Konvention modelname_id benennen, sondern benennen diese departure_airport_id und arrival_airport_id.

Abbildung  Aiport-Flight-Relation

Die Flughäfen und Länder werden nicht über das System anlegbar oder editierbar sein. Hier werden wir nur die Models Airport und Country anlegen und die Datenbank mit Beispielwerten füllen. Ihrer Phantasie sind natürlich keine Grenzen gesetzt, die Beispielapplikation um diese Funktionalität zu erweitern.

Die Flüge sollen gepflegt werden können. Das heißt, es sollen neue Flüge angelegt und vorhandene editiert oder gelöscht werden können.



Ihr Kommentar

Wie hat Ihnen das <openbook> gefallen? Wir freuen uns immer über Ihre freundlichen und kritischen Rückmeldungen. >> Zum Feedback-Formular
 <<   zurück
  Zum Katalog
Zum Katalog: Ruby on Rails 2
Ruby on Rails 2
Jetzt bestellen
 Ihre Meinung?
Wie hat Ihnen das <openbook> gefallen?
Ihre Meinung

 Buchtipps
Zum Katalog: Ruby on Rails 3.1






 Ruby on Rails 3.1


Zum Katalog: Responsive Webdesign






 Responsive Webdesign


Zum Katalog: Suchmaschinen-Optimierung






 Suchmaschinen-
 Optimierung


Zum Katalog: JavaScript






 JavaScript


Zum Katalog: Schrödinger lernt HTML5, CSS3 und JavaScript






 Schrödinger lernt
 HTML5, CSS3
 und JavaScript


 Shopping
Versandkostenfrei bestellen in Deutschland und Österreich
InfoInfo




Copyright © Rheinwerk Verlag GmbH 2008
Für Ihren privaten Gebrauch dürfen Sie die Online-Version natürlich ausdrucken. Ansonsten unterliegt das <openbook> denselben Bestimmungen, wie die gebundene Ausgabe: Das Werk einschließlich aller seiner Teile ist urheberrechtlich geschützt. Alle Rechte vorbehalten einschließlich der Vervielfältigung, Übersetzung, Mikroverfilmung sowie Einspeicherung und Verarbeitung in elektronischen Systemen.


[Rheinwerk Computing]

Rheinwerk Verlag GmbH, Rheinwerkallee 4, 53227 Bonn, Tel.: 0228.42150.0, Fax 0228.42150.77, service@rheinwerk-verlag.de