diff options
| -rw-r--r-- | admin.py | 12 | ||||
| -rw-r--r-- | models.py | 24 | 
2 files changed, 25 insertions, 11 deletions
| @@ -15,13 +15,19 @@  #    51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.  from django.contrib import admin -from .models import Timetable, LastUpdate, Group, Subscription, Room, Course +from .models import Timetable, LastUpdate, Group, Subscription, Room, Course, Year + + +@admin.register(Year) +class YearAdmin(admin.ModelAdmin): +    pass  @admin.register(Timetable)  class TimetableAdmin(admin.ModelAdmin): -    prepopulated_fields = {"slug": ("year", "name",)} -    list_display = ("full_name", "url",) +    prepopulated_fields = {"slug": ("name",)} +    list_display = ("name", "year", "url",) +    list_filter = ("year",)  @admin.register(LastUpdate) @@ -25,22 +25,30 @@ import hashlib  import os +class Year(models.Model): +    name = models.CharField(max_length=16, verbose_name="année") +    slug = models.SlugField(max_length=16, unique=True, default="") + +    def __str__(self): +        return self.name + + +    class Meta: +        verbose_name = "année" +        verbose_name_plural = "années" + +  class Timetable(models.Model): -    year = models.CharField(max_length=16, verbose_name="année") -    name = models.CharField(max_length=64, verbose_name="nom") +    year = models.ForeignKey(Year, verbose_name="année") +    name = models.CharField(max_length=64, unique=True, verbose_name="nom")      url = models.URLField(max_length=255, unique=True, verbose_name="URL")      slug = models.SlugField(max_length=64, unique=True, default="")      def __str__(self): -        return self.full_name() - -    def full_name(self): -        return self.year + " " + self.name +        return self.name -    full_name.short_description = "Nom complet"      class Meta: -        unique_together = ("year", "name",)          verbose_name = "emploi du temps"          verbose_name_plural = "emplois du temps" | 
