Was ist die bevorzugte Namenskonvention für Django-Modellklassen?
Welchen Pluralnamen Django für den Modellnamen erstellen wird Person
?
Was ist die bevorzugte Namenskonvention für Django-Modellklassen?
Django-Modelle sind lediglich Python-Klassen, so dass die Python-Namenskonventionen, die in PEP-8 anwenden.
Zum Beispiel:
Wenn Django den Klassennamen bei der Erstellung der entsprechenden Tabelle nicht richtig pluralisiert, können Sie die Pluralisierung einfach außer Kraft setzen, indem Sie eine eigene wortreicher_name_plural Feld in einer inneren META-Klasse. Zum Beispiel:
class Story(models.Model):
...
class Meta:
verbose_name_plural = "stories"
Ich glaube, der Variablenname ist verbose_name_plural, wie in der Dokumentation angegeben. docs.djangoproject.com/de/dev/topics/db/models/#meta-options
Soweit ich weiß, ist die Idee, dass der Klassenname Singular sein sollte und sollte SentenceCase mit keine Leerzeichen verwenden. Sie hätten also Namen wie:
Person
TelephoneNumber
Dann weiß das Django-Admin-Tool, wie man sie pluralisiert. Funktioniert nicht so gut für Namen wie:
Category
die im Plural als Kategorien bezeichnet werden, aber das war's auch schon...
Ansonsten geben Sie der Klasse einfach einen Namen, der Ihnen etwas bedeutet und der kurz und bündig zusammenfasst, was die Klasse darstellen soll.
Ben
In den meisten Programmiersprachen bevorzugt man es, den Objekten/Modellen einen eindeutigen Namen zu geben, da diese Modelle auch durch Tabellen in Ihrem Datenbanksystem dargestellt werden. Der Minimalismus ist immer eine gute Wahl, um Bedeutungskonflikte in der Zukunft zu vermeiden.
Um ein Beispiel zu nennen; https://stackoverflow.com/a/5841297/2643226
Wenn Sie außerdem zusammenhängende Objekte für ein Modell mit mehr als einem Wort benötigen, können Sie das Attribut _set verwenden. Beispiel:
class ProcessRoom(models.Model):
...
plant = models.ForeignKey("Plant", verbose_name='planta', on_delete=models.CASCADE)
Dann werden verwandte Objekte sein:
plant = Plant.object.get(id=1)
process_rooms = plant.processroom_set.all
CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.
0 Stimmen
Benennen Sie es einfach, damit Sie wissen, wofür das Modell steht