Ich schreibe eine Django-App, die verschiedene Funktionen ausführt, einschließlich Einfügen oder Aktualisieren neuer Datensätze in der Datenbank über die URL.
Eine interne Anwendung sendet also eine Anfrage an /import/?a=1&b=2&c=3
zum Beispiel. In der Ansicht möchte ich ein neues Objekt erstellen, foo = Foo()
und haben die Mitglieder von foo
auf die Daten im request.GET-Wörterbuch gesetzt.
Das tue ich jetzt:
- Anfrage gesendet an
/import/?a=1&b=2&c=3
- Ansicht erstellt neues Objekt:
foo = Foo()
- Das Objekt wird mit Daten aktualisiert.
Hier ist, was ich bis jetzt habe:
foo.a = request['a']
foo.b = request['b']
foo.c = request['c']
Dies ist natürlich mühsam und fehleranfällig. Die Daten in der URL haben genau denselben Namen wie die Mitglieder des Objekts, so dass es sich um eine einfache 1:1-Zuordnung handelt.
Im Idealfall würde ich gerne so etwas tun können:
foo = Foo()
foo.update(request.GET)
oder etwas in dieser Richtung.
Danke!