Talks¶
To list public presentations on CVs, Django-Vitae uses two models representing two different ideas. A “talk”, represented by Talk
, reflects a single idea conveyed with a title. It can optionally also include other other elements related to that talk such as notes and slides. A “presentation”, represented by Presentation
, reflects a specific public performance of a talk at a some location and at some time.
This structure allows multiple presentations of the same talk to be logically connected and can prevent multiple listings with the same title, for example, in the “Presentations” section of a C.V.
Talk Model¶
The Talk
model has three required fields:
title
short_title
slug
The publication set for a given talk can be accessed with the presentations
attribute of a Talk
instance.
The Talk
class contains a foreign key field, article_from_talk
that connects a talk to an article. This may be useful to provide a link to the article on a page about the talk to make it clear where visitors can find the publication that resulted.
The Talk
model also contains a convenience method, get_latest_presenation()
that returns the Presentation
instance of the talk that was most recently performed (using the presentation_date
field).
Talk Views¶
Talk List: TalkListView
Display a list of all talks given in order of most recent presentation date.
Context object {{talk_list}}
Template 'cv/lists/talk_list.html'
URL r'^talks/$'
URL name 'talk_object_list'
MIME type text/html
Talk Detail: TalkDetailView
Display detailed information for a particular talk.
Context object {{talk}}
Template 'cv/details/talk_detail.html'
URL r'^talks/(?P<slug>[-\w]+)/$'
URL name 'talk_object_detail'
MIME type text/html
Presentations¶
The Presentation
model instances relate to a Talk
instance through a foreign key. The Presentation
model has three required fields in addition to the Talk
foreign key:
presentation_date
that represents when this presentation was “performed;” presentations are ordered by presentation date with the most recent presentation firsttype
represents the form of the presentation; choices are “Invited”, “Conference”, “Workshop”, and “Keynote”.event
contains the name of event or venue at which the presentation was given.
Django-Vitae assumes that presentations will be displayed in conjunction with talks and, therefore, not displayed on their own.