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 7 Rails-Projekte erstellen
  Pfeil 7.1 Generieren eines Rails-Projektes
  Pfeil 7.2 Verzeichnisstruktur einer Rails-Applikation
  Pfeil 7.3 Namenskonventionen
  Pfeil 7.4 Datenbank-Konfiguration
  Pfeil 7.5 Umgebungseinstellungen
  Pfeil 7.6 Generatoren
  Pfeil 7.7 Rails-Konsole
  Pfeil 7.8 Lokaler Server
  Pfeil 7.9 Logging
  Pfeil 7.10 Debugging
  Pfeil 7.11 Rake
  Pfeil 7.12 EdgeRails
  Pfeil 7.13 Ein Rails-Projekt in Subversion überführen


Rheinwerk Computing - Zum Seitenanfang

7.3 Namenskonventionen  topZur vorigen Überschrift

Magie?

In diesem Abschnitt wollen wir Ihnen die automatische Namensgebung in Rails, die Rails-Newcomer mit am meisten verwirrt, erläutern. Was einen am Anfang am meisten überrascht, ist, dass Rails, wenn man ein Model Person aufruft, irgendwie zu wissen scheint, dass es auf eine Datenbanktabelle people zugreifen muss. Wirkt wie Magie, ist es aber nicht.

Wir werden in diesem Abschnitt die Default-Regeln von Rails für die Namensgebung erläutern. Alle diese Regeln können Sie in Ihren Klassen durch entsprechende Deklarationen überschreiben.

CamelCase, Unterstriche und Plural

Häufig benennen wir Variablen und Klassen mit mehreren Wörtern, ja manchmal sogar mit kurzen Phrasen. In Ruby sind dabei folgende Regeln zu beachten:

Regeln

Variablennamen werden immer kleingeschrieben. Besteht der Name aus mehreren Wörtern, werden diese mit einem Unterstrich miteinander verbunden: order_status . Bei Klassen und Modulen verhält sich das anders. Hier wird der Name immer zusammengeschrieben. Besteht er aus mehreren Wörtern, so beginnt jedes neue Wort mit einem Großbuchstaben, wie z. B. FlightBooking . Diese Schreibweise ist auch unter dem Begriff CamelCase bekannt.

Rails hat diese Konventionen von Ruby übernommen und in zweierlei Hinsicht erweitert:

Tabellennamen

Rails geht davon aus, dass Tabellennamen, wie Variablennamen in Ruby, immer kleingeschrieben werden und, sollten sie aus mehreren Wörtern bestehen, dass diese durch einen Unterstrich getrennt werden. Außerdem wird vorausgesetzt, dass Tabellennamen immer im Plural stehen. Dieses führt dann zu Tabellennamen wie z. B. employees oder flight_bookings .

Dateinamen

Dateinamen werden in Rails auch kleingeschrieben, und falls erforderlich, werden zusammengesetzte Wörter durch einen Unterstrich miteinander verbunden.

Diese Annahmen nutzt Rails, um Namen automatisch zu konvertieren. Zum Beispiel könnte Ihre Applikation ein Model enthalten, das Abenteuerreisen verwaltet. Sie würden diese Klasse AdventureTrip nennen. Rails würde daraus automatisch ableiten, dass

  • die dazugehörige Datenbanktabelle adventure_trips heißen würde (der Name des Models wird in Kleinbuchstaben umgewandelt, die einzelnen Wörter werden durch Unterstriche miteinander verbunden und in den Plural gesetzt).
  • die Klasse in der Datei app/models/adventure_trip.rb definiert ist.

Controller

Für die Rails-Controller gelten zusätzliche Namenskonventionen. Angenommen, wir haben einen Controller mit dem Klassennamen FlightsController, dann gelten folgende Konventionen:

  • Die Controller-Datei heißt flights_controller.rb und befindet sich im Verzeichnis app/controllers .
  • Das zugehörige Helfermodul heißt FlightsHelper und wird in der Datei flights_helper.rb im Verzeichnis app/helpers definiert.
  • Die dazugehörigen Templates (Views) befinden sich im Verzeichnis app/views/flights .
  • Wenn die Datei app/views/layouts/flights.html.erb existiert, wird diese Layout-Datei für alle Templates des Flights-Controllers verwendet.

Es gibt noch eine weitere Besonderheit in Rails:

kein require erforderlich

In »normalem« Ruby-Code müssen wir, bevor wir auf Klassen oder Module zugreifen, diese über das Keyword require inkludieren. Da Rails die Beziehungen zwischen Dateinamen und Klassennamen kennt, ist das normalerweise in einer Rails-Applikation nicht nötig. Stattdessen leitet Rails beim ersten Aufruf einer unbekannten Klasse oder eines unbekannten Modul aus deren bzw. dessen Namen den entsprechenden Dateinamen ab und versucht, die Datei im Hintergrund zu laden. Deshalb können Sie einfach eine Klasse aufrufen, und schon wird die Klasse in Ihre Applikation geladen.

Das ist normalerweise so. Die einzige Ausnahme bildet Code im Verzeichnis lib und dessen Unterverzeichnissen. Da Rails diesen Bereich nicht verwaltet, müssen Sie die Klassen, die Sie aus diesem Verzeichnis nutzen wollen, über require einbinden:

require "klasse_aus_lib_verzeichnis"


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