2012-03-25 14 views
5

Ich bin auf Informationen gestoßen, die die meisten erfahrenen Rails-Entwickler vermuten lassen, die kein Gerüst verwenden. Verwenden die meisten erfahrenen Rails-Entwickler die Generatoren für Modelle, Controller und Migrationen?In Rails, sollte ich die Generatoren verwenden?

Zum Beispiel, wie ein erfahrener Rails Entwickler würde ich tun:

rails g model Post name title content 

oder

rails g migration Create_Posts 

und ändern Sie es mit:

def change 
    create_table :posts do |t| 
    t.string :name 
    t.string :title 
    t.text :content 

    t.timestamps 
    end 

und auch manuell Post erstellen. rb

Ist die Verwendung von Generatoren eine bewährte Methode in Rails?

Antwort

2

Ich benutze nie die Generatoren. Ich finde, dass ich am Ende nur die Hälfte der Sachen lösche, die sie erstellen, bis ich schließlich diese Dateien/Methoden hinzufügen muss. In einem anständigen Texteditor braucht es keine Zeit, um einen neuen Controller, ein neues Modell, eine neue Vorlage, eine neue Spezifikation usw. zu erstellen. Eine Ausnahme ist jedoch der Migrationsgenerator.

In diesem Fall ist es einfacher, den Generator zu verwenden, da die Migration korrekt versioniert werden muss.

2

Die Generatoren sind nur eine Methode, um die Entwicklungszeit zu erhöhen. Du kannst sie benutzen, wenn es dir hilft oder sie nicht benutzt, wenn du sie nicht magst.

Sie can create your own generators Wenn Sie denken, dass es Ihren Entwicklungsprozess verbessern würde.

0

Die Generatoren sind großartig, um das Muster zu sehen. Ich stelle fest, dass, je mehr ich über die Struktur einer Rails-App lerne, desto mehr kann ich wählen, was ich für jede Situation tun möchte. Zum Beispiel finde ich, dass das Generieren der Modelle nur der Weg ist, wegen der Bits, die erstellt werden (und als d11wtq-Erwähnungen versioniert werden). Wenn ich dann das Basismodell habe, um damit zu arbeiten, kann ich ein Gerüst erzeugen und dieses als Ausgangspunkt für mehr Hacking und Veränderung nutzen.

Ich bin dabei, meine eigenen Generatoren für eines der Systeme zu schreiben, die viele Formen haben und zumindest auf diese Weise viele Wiederholungsarbeiten vermeiden können - zumindest hoffe ich es.

Hoffe, dass hilft

Verwandte Themen