ich einen Auftrag Modell haben:Django: Limit models.ForeignKey Ergebnisse
class Order(models.Model):
profile = models.ForeignKey(Profile, null=True, blank=True)
, die alle möglichen Profile für einen Auftrag gibt, die nicht notwendig ist und das Laden der Admin-Seite, um zu verlangsamen.
Ich möchte das Profil zurückgeben einfach das Profil des Benutzers, der die Bestellung aufgegeben hat. Ich habe versucht, zu ändern, es zu:
class Order(models.Model):
profile = models.ForeignKey(Profile, null=True, blank=True, limit_choices_to={'order': 99999})
die für eine Auftragsnummer 99999 das richtige Profil zurückgibt, aber wie kann ich diese dynamisch erhalten. Dem Auftragsmodell ist das "Selbst" nicht bekannt, aber die Auftragsnummer ist in der URL enthalten.
Was ist der beste Weg, dies zu tun?
Wenn das Profil fest ist, klingt es so, als ob es überhaupt nicht editierbar sein sollte. Sie könnten es zu einem [Nur-Lese-Feld] (https://docs.djangoproject.com/en/1.9/ref/contrib/admin/#django.contrib.admin.ModelAdmin.readonly_fields) machen und den Wert [bei der Bestellung festlegen wird platziert] (https://docs.djangoproject.com/en/1.9/ref/contrib/admin/#django.contrib.admin.ModelAdmin.save_model). – Alasdair
Verwenden Sie den django admin? –
Ja, das ist mit der Django Admin-Site – James