Django: ungültiges Schlüsselwort für diese Funktion

8

Ich möchte einige Daten in ein Feld "Viele zu Viele" einfügen. Ich bekomme diesen Fehler

  

user ist ein ungültiges Schlüsselwort-Argument für diese Funktion

Ich habe es auch mit dem verwandtenName versucht ... aber funktioniert immer noch nicht ...

Mein Modell sieht so aus:

models.py

%Vor%

views.py

%Vor%

Hat jemand eine Idee? Vielen Dank!

    
Jurudocs 06.10.2012, 22:13
quelle

1 Antwort

20

Sie haben ein ManyToMany Feld verwendet Das user -Feld Ihres Workspace -Objekts, Sie können ihm keinen Benutzer geben, das ist nicht, wie ein ManyToMany funktioniert, das wäre ein ForeignKey .

Im Grunde genommen verwendet jeder% workspace einen ForeignKey mit einem User , es gibt einen direkten Link Workspace -> User , also ist es sinnvoll ein Workspace zu erstellen und ein User , wie du, zu übergeben würde ein CharField ausfüllen.

Eine ManyToMany -Beziehung bedeutet, dass mehrere Benutzer einer Workspace und mehrere Workspaces einer User zugeordnet werden können. Wenn Sie ManyToMany verwenden, erstellen Sie Ihre Workspace und dann fügen Sie User s hinzu.

Um zu einer ManyToMany -Beziehung hinzuzufügen, gehen Sie folgendermaßen vor:

%Vor%

Sie sollten das Feld user in users umbenennen, um den Namen der Beziehung zu verdeutlichen.

    
Thomas Orozco 06.10.2012, 22:18
quelle

Tags und Links