Recherche par domaine dans chercheurs
[auf_savoirs_en_partage_django.git] / auf_savoirs_en_partage / sitotheque / models.py
CommitLineData
01a9197e 1# -*- encoding: utf-8 -*-
2from django.db import models
03e081cb
AJ
3from datamaster_modeles.models import *
4from savoirs.models import Discipline
01a9197e 5
6TYPE_SITE_CHOICES = (
7 ('RV', 'Revue en ligne'),
8 ('BB', 'Bibliothèque en ligne'),
00755d9b 9 ('FD', 'Fonds documentaire'),
01a9197e 10 ('AR', 'Archive ouverte'),
11 ('CO', 'Cours en ligne'),
00755d9b
AJ
12 ('RE', 'Repertoire de ressource'),
13 ('SA', 'Site associatif'),
14 ('SC', 'Site culturel'),
15 ('SI', 'Site d\'information'),
01a9197e 16 ('AU', 'Autre type de site'),
17 )
18
19class Site(models.Model):
20 """Fiche d'info d'un site web"""
f810842d 21 url = models.URLField(verify_exists=False) # dc:identifier (dc:source?)
03e081cb 22 titre = models.CharField(max_length=255, verbose_name='Titre') # dc.title
e7d36875
AJ
23 description = models.TextField(null=True, blank=True)
24 editeur = models.CharField(max_length=255, null=True, blank=True, verbose_name='Éditeur') # dc.publisher : organisation resp
25 auteur = models.CharField(max_length=255, null=True, blank=True, verbose_name='Auteur') # dc.creator : nom, prénom
03e081cb
AJ
26
27 #auf_partenaire = models.BooleanField() # dc.contributor
28
e7d36875
AJ
29 date_publication = models.DateField(null=True, blank=True) # dc.date : date de publication
30 type = models.CharField(max_length=2, null=True, blank=True, choices=TYPE_SITE_CHOICES,
01a9197e 31 verbose_name = 'Type de site') # dc.type
03e081cb
AJ
32 discipline = models.ManyToManyField(Discipline, blank=True)
33 thematique = models.ManyToManyField(Thematique, blank=True)
34
e7d36875 35 mots_cles = models.TextField(verbose_name='Mots-clés', null=True, blank=True) # dc:subject # indexation libre
01a9197e 36
37 # source # dc:source (dc:relation?)
e7d36875 38 pays = models.ForeignKey(Pays, null = True, blank=True, db_column='pays', to_field='code', verbose_name = 'Pays')
01a9197e 39
40 # meta
41 actif = models.BooleanField()
03e081cb 42 date_maj = models.DateField(auto_now=True)
6e001443 43
44 def __unicode__(self):
c08cba47 45 return "%s" % (self.titre)