Rails für Anfänger - Der einsteigerfreundliche Weg
Dieser Leitfaden ist speziell für Anfänger ohne Programmiererfahrung geschrieben.
Warum Rails für Anfänger?
Rails ist anfänger-freundlich weil:
- Convention over Configuration (weniger zu entscheiden)
- Schnelle Resultate (motivierend)
- Gute Fehlermeldungen
- Große Community und Ressourcen
Erste Rails App: Blog
Vorbereitung
- Ruby 3.x installieren
- Rails installieren:
gem install rails - Git installieren
- Editor (VS Code)
Projekt erstellen
rails new blog
cd blog
rails generate scaffold Post title:string content:text
rails db:migrate
rails server
Besuche: http://localhost:3000/posts
Fertig! Du hast eine funktionsfähige Blog-App.
Was ist ein Scaffold?
Ein Scaffold erstellt automatisch:
- Model: Post-Datenbankmodell
- Controller: Handles HTTP-Requests
- Views: HTML-Templates zum Anzeigen
- Migration: Datenbank-Schema
Das ist super zum Lernen, da du sehen kannst, wie alles zusammen funktioniert.
Verständnis: Die Request-Antwort-Zyklus
- Browser sendet GET /posts/1
- Rails Router mapped zu PostsController#show
- Controller lädt Post mit ID 1
- Controller rendered posts/show.html.erb
- Browser zeigt HTML an
Vertiefung: Die 7 Rails-Aktionen
Jedes Modell hat standardmäßig 7 Aktionen (CRUD+):
| HTTP | Aktion | Zweck |
|---|---|---|
| GET | index | Alle anzeigen |
| GET | show | Eins anzeigen |
| GET | new | Formular zum Erstellen |
| POST | create | In DB speichern |
| GET | edit | Formular zum Ändern |
| PATCH | update | Änderungen speichern |
| DELETE | destroy | Löschen |
Diese sind Rails-Standard.
Erste Änderungen
Home-Seite anpassen
Bearbeite app/views/posts/index.html.erb:
<h1>Mein Blog</h1>
<p>Willkommen!</p>
<% @posts.each do |post| %>
<article>
<h2><%= link_to post.title, post %></h2>
<p><%= post.content %></p>
</article>
<% end %>
Modell validieren
Bearbeite app/models/post.rb:
class Post < ApplicationRecord
validates :title, presence: true
validates :content, length: { minimum: 10 }
end
Jetzt werden Posts nur gespeichert, wenn sie valide sind.
Kleine Projekte zum Üben
- Blog erweitern: Comments hinzufügen
- Todo-App: Aufgaben mit Status
- Einfacher Shop: Produkte + Preise
- Events-App: Events mit Datum
Jede sollte 1–2 Wochen dauern.
Häufige Fehler Anfänger
- ✗ Scaffold nicht verstehen
- ✗ Migrationen ablehnen ("Nur DB direkt ändern")
- ✗ Keine Tests ("Ich teste im Browser")
- ✗ Zu viel CSS/Frontend ("Rails ist Backend!")
- ✗ Zu viele Gems ("Ich installiere alles")
Vermeide diese!
Best Practices von Anfang an
- Git verwenden:
git init,git add,git commit - Regelmäßig testen: Im Browser nach jeder Änderung
- Fehlermeldungen lesen: Sie sind deine Freunde
- Dokumentation nutzen: Rails Guides sind ausgezeichnet
- Andere Code lesen: GitHub hat viele Rails-Projekte
Ressourcen
- Rails Getting Started Guide
- Udemy "The Complete Ruby on Rails Developer"
- "Learn Ruby on Rails" (Buch)
- Rails Dokumentation Online
Nächste Schritte
Nach ersten Projekten:
