1. Daniel Dengler
web developer
Ruby on Rails
Workshop SS 2009
„Ruby on Rails“ and the Rails-Logo are registered trademarks of David Heinemeier Hansson – www.rubyonrails.org
4. Installation - Plugin
script/plugin install NAME ODER URL
script/plugin update NAME
script/plugin remove NAME
Alle Plugins werden in der aktuellen Anwendung
installiert und beim Start des Servers automatisch
aus vendor/plugins geladen.
5. Installation - Gems
(sudo) gem install NAME
Gems werden nicht automatisch geladen, da sie nicht
in die Anwendung sondern auf dem aktuellen System
installiert werden.
Um Gems zu laden müssen diese den Con g-Dateien
der Anwendung hinzugefügt werden.
6. Installation - Gems
In der Kon gurationsdatei con g/environment.rb:
con g.gem ' rst_gem'
con g.gem 'second_gem', :version => '0.4.1'
con g.gem 'third_gem', :version => '>=1.1.0'
Es wird geprüft, ob die Gems vorhanden sind und
falls vorhanden, werden diese geladen.
8. Mögliche Pluginfeatures
• Erweiterung alle Kernklassen um neue
Features wie etwa act_as_tree,
acts_as_versioned, ...
• Generatoren
• Rake-Tasks
• Tests
12. Baumstrukturen
ActiveRecord Erweiterung
• acts_as_tree
• awesome_nested_set
Erlaubt es Baumstrukturen einfach in der
Datenbank abzubilden. Beide Plugins haben
verschiedene Vor- und Nachteile, die berücksichtigt
werden sollten.
13. Versionierung
ActiveRecord Erweiterung
• acts_as_versioned
Legt beim speichern immer eine neue Version des
Datensatzes an ohne eine alte zu überschreiben.
Zudem können alte Versionen eingesehen und
wiederhergestellt werden.
14. Paranoia
ActiveRecord Erweiterung
• acts_as_paranoid
Anstelle Datensätze zu löschen, werden diese als
gelöscht markiert und bei den normalen Abfragen
nicht mehr zurückgeliefert.
16. Dateinanhänge
ActiveRecord Erweiterung
• paperclip
Erlaubt es Dateien an Datensätze zu binden.
Zudem können Bilder, wie etwa Avatare
entsprechend den Vorgaben neu berechnet
werden.
20. Tests
Testing Erweiterungen
• RSpec
• cucumber
• factory_girl
• shoulda
Erlaubt es Dateien an Datensätze zu binden. Zudem
können Bilder, wie etwa Avatare entsprechend den
Vorgaben neu berechnet werden.
21. HAML & SASS
ActionView Erweiterungen
• haml
Erlaubt die Verwendung der Markupsprache HAML
in Views und die De nition von CSS mittels SASS.
25. Viele, viele andere Erweiterungen
In den häu gsten Fällen lohnt die Suche nach
einem entsprechenden Plugin für eine bestimmte
Funktion, da viele grundlegende Probleme bereits
von anderen Entwicklern gelöst wurden.