Vor ein paar Tagen habe ich mir Django in der Programmiersprache Python angesehen. Wie Experten und Gelehrte sagten, muss man zuerst eine andere Sprache beherrschen, also habe ich mich für die Python-Programmierung entschieden mit Sprache.
In diesen wenigen Tagen des Lernens habe ich tatsächlich entdeckt, dass andere Sprachen und ihre Frameworks tatsächlich ein einzigartiges Gefühl haben. Im Folgenden fasse ich kurz zusammen, was ich in den letzten Tagen gesehen habe. Dieser Artikel ist kein Tutorial zu Django, sondern ein Teil von Ahuaxuans eigenem Verständnis von Django. Ich hoffe, dass nicht jeder mit den Steinen in seinen Händen geizt.
Wenn mich jemand fragt, was mir an Django am besten gefällt, werde ich Ihnen ohne zu zögern sagen, dass es sich um das ORM von Django handelt „Unzufrieden“, allerdings aus intellektueller Sicht.
Was Hibernate tut, ist sehr richtig, da es nicht nur für das Internet gedacht ist. Der Hauptmarkt sollte immer noch in Unternehmensanwendungen liegen, es ist jedoch nicht unmöglich, es im Internet zu verwenden. Es ist nur so, dass sich die Leute häufiger für Ibatis und dergleichen entscheiden, weil Leute, die Hibernate nicht kennen, immer sagen werden, dass Hibernate nicht so schnell ist wie Ibatis (eigentlich stört mich das am meisten, und einseitige Vergleiche sind bedeutungslos).
Das Ziel von hibernate ist es, ein umfassendes und vielseitiges ORM-Framework in der Java-Welt aufzubauen, sodass seine Lernkurve und Komplexität der Verwendung von Tag zu Tag zunimmt. Es ist nicht einfach, den Ruhezustand vollständig zu beherrschen (erzählen Sie mir nicht, dass Sie auf „Crud“ klicken können, wissen Sie einfach, wie man auf „Lazy Load“ klickt, und Sie werden den Ruhezustand meistern).
Sprechen Sie ausführlich über die breite Palette von Python-Unternehmensanwendungen
Eine klare und transparente Python-Anwendung auf einen Blick
Wie man Python-Virtual-Machine-Threads innoviert
Forschung zu Python-Hauptthread-Problemen Diskussion
Studie und Forschung zu Python-Thread-Betriebsproblemen
Rückblickend auf Djangos ORM würde es 800 Seiten erfordern Buch, um den Ruhezustand klar zu erklären, und um Djangos ORM klar zu erklären, reichen 200 Seiten aus (tatsächlich umfasst das offizielle Dokument nur ein Dutzend Seiten). Hier ist ein Beispiel dafür, was ich tue.
Hier gibt es ein selbstbezogenes Objekt (tatsächlich basiert Djangos ORM auf einem Modell, das sich von Ror unterscheidet. Jemand hat mir gesagt, dass Ror ein Datenbanktreiber ist. Dieses Objekt hat normalerweise ein übergeordnetes Objekt). Unser Menü wird als ein solches Objekt definiert und ein solches Menü kann nach unten hin unendlich erweitert werden:
class Category(models.Model): id = models.AutoField('id', Primary_key=True) name = models.CharField(maxlength=50) code = models.CharField(maxlength=50) parentCategory = models.ForeignKey('self', 'id', null=True) enable = models.BooleanField() def __ str__(self): return self.name class Admin: list_display = ('id', 'name', 'code', 'parentCategory')
Der in der Programmiersprache Python definierte Admin dient dem Admin-Modul von Django. Das von uns definierte Domänenmodell erfordert nur diese Codes und Modelle. Das Modell ist das übergeordnete Objekt. Alle Modellobjekte müssen dieses Objekt erben. Dieses Objekt stellt viele häufig verwendete Datenbankmethoden bereit, basiert jedoch nicht auf SQL, sondern auf Objekten wie Kriterien. Nachfolgend sind einige häufig verwendete Methoden zum Abfragen der Kategorie aufgeführt.
Natürlich bietet Djangos ORM viele sehr häufig verwendete Funktionen. Ich werde hier nicht einzeln Beispiele nennen Komplexe Kartierungsstrategien in Hibenate. Ich habe es nicht in Django gesehen.
Aber ich bin froh, dass ich diese Funktion in Django nicht gefunden habe, da Django selbst auf eine schnelle Internetentwicklung ausgerichtet ist und den Dingen, die in diesem Bereich selten vorkommen, nicht allzu viel Aufmerksamkeit geschenkt werden muss bringt Vorteile Es ist die Reduzierung der Lernkurve und die Verbesserung der Entwicklungseffizienz.
Das Obige ist die Beschreibung der Programmiersprache Python. Weitere verwandte Artikel finden Sie auf der chinesischen PHP-Website (www.php.cn).