2017-09-08 4 views
0

Ich arbeite an einer Django App für die Verfolgung von Sammlungen (Münzen, Karten, Edelsteine, Briefmarken, Autos, was auch immer). Sie können mehrere Sammlungen haben, jede Sammlung kann Sätze (Piratenkarten, Cardinals Karten usw.) und dann natürlich die einzelnen Gegenstände in jeder Sammlung/Satz haben. Jedes Element kann mehrere Bilder, einen Namen und eine Beschreibung enthalten, aber hier bin ich unsicher, wie ich vorgehen soll. Jede Sammlung benötigt eigene Werte oder Felder, die der Benutzer bestimmen muss (Zustand, Abmessungen in den entsprechenden Einheiten, Münzdicke, Modellnummer usw.). Wie kann ich benutzerdefinierte Felder erstellen, so dass der Benutzer das Feld benennen kann und den Eingabetyp (Text, Zahlen, Dropdownliste mit Auswahlmöglichkeiten) auswählen kann und diese Felder angezeigt werden, um für jedes Element in dieser Sammlung eingegeben zu werden?Benutzer erstellte Felder in Django

+0

Hallo und willkommen zu Stack Overflow! Bitte nehmen Sie sich etwas Zeit, um sich durch die [Willkommenstour] (https://Stackoverflow.com/tour) zu informieren, um sich hier auskennen (und auch um Ihr erstes Abzeichen zu erhalten), lesen Sie, wie man ein [Minimal, Complete und Verifizierbares Beispiel] (https://stackoverflow.com/help/mcve) und auch [Wie stelle ich gute Fragen?] (Https://stackoverflow.com/help/how-to-ask), damit Sie Ihre Chancen erhöhen Feedback und nützliche Antworten. – DarkCygnus

Antwort

0

Dies würde eine Entity-Attribute-Value (EAV) model genannt werden und es ist ziemlich schwierig, in der Art zu implementieren, wie Sie wollen. Sie müssen alle Arten von Problemen mit Benutzereingaben antizipieren, wie Sie Feldtypen validieren, was passiert, wenn der Benutzer Felder ändern möchte usw. Ich würde damit beginnen, die in dieser Frage aufgeworfenen Probleme zu lesen und darüber nachzudenken, wie Sie Ihre Änderungen vornehmen können Schema, um zu vermeiden, dass Benutzer ihre eigenen Metadaten zur Laufzeit definieren. Gibt es Felder, die allen Sammlungen gemeinsam sein können (z. B. Zustand, Abmessungen, Modellnummer)? Wie tolerant möchten Sie bei Problemen mit dem Datentyp sein, und können Benutzer Feldtypen nach der Erstellung ändern?

Je mehr Gedanken Sie in die Umsetzung stecken, desto mehr Probleme können Sie auf der Straße vermeiden.

Verwandte Themen