Wie kann ich eine einzelne Ansicht (kein Viewset) auf meinem Router registrieren?

Ich verwende das Django-REST-Framework und habe versucht, eine Ansicht zu erstellen, die ein kleines Stück Information zurückgibt, sowie diese auf meinem Router zu registrieren.

Ich habe vier Modelle, die Informationen speichern, und alle von ihnen haben eincreated_time Feld. Ich versuche, eine Ansicht zu erstellen, die die neuesten Objekte zurückgibt (basierend auf demcreated_time) in einer einzelnen Ansicht, in der nur die vier Erstellungszeiten zurückgegeben werden.

Also würde eine mögliche JSON-Ausgabe aus der Ansicht wie folgt aussehen:

{
    "publish_updatetime": "2015.05.20 11:53",
    "meeting_updatetime": "2015.05.20 11:32",
    "training_updatetime": "2015.05.20 15:25",
    "exhibiting_updatetime": "2015.05.19 16:23"
}

Ich hoffe auch, diese Ansicht auf meinem Router zu registrieren, sodass sie beim Laden des API-Stammverzeichnisses zusammen mit den übrigen Endpunkten angezeigt wird.

router.register(r'updatetime', views.UpdateTimeView)

Hier sind die vier Modelle, mit denen ich versuche zu arbeiten

class Publish(models.Model):
    user = models.ForeignKey(MyUser)
    name = models.CharField(max_length=50)
    created_time = models.DateTimeField( default=datetime.now)

class Meeting(models.Model):
    user = models.ForeignKey(MyUser)
    name = models.CharField(max_length=50)
    file_addr = models.FileField(upload_to=get_file_path)
    created_time = models.DateTimeField(default=datetime.now)

class Training(models.Model):
    user = models.ForeignKey(MyUser)
    name = models.CharField(max_length=50)
    image = models.ImageField(upload_to=get_file_path, max_length=255)
    created_time = models.DateTimeField(default=datetime.now)

class Exhibiting(models.Model):
    user = models.ForeignKey(MyUser)
    name = models.CharField(max_length=50)
    file_addr = models.FileField(upload_to=get_file_path)
    created_time = models.DateTimeField(default=datetime.now)

Ist das möglich? Und wie würde es gemacht werden?

Antworten auf die Frage(4)

Ihre Antwort auf die Frage