|
|
@@ -0,0 +1,57 @@
|
|
|
+from django.db import models
|
|
|
+from django import forms
|
|
|
+
|
|
|
+from django.template.defaultfilters import slugify
|
|
|
+
|
|
|
+from trumbowyg.widgets import TrumbowygWidget
|
|
|
+
|
|
|
+class Cat_Blog(models.Model) :
|
|
|
+ cb_titre = models.CharField("Titre", max_length = 128, unique = True)
|
|
|
+ cb_titre_slgify = models.CharField("Titre Slugify", max_length = 128, blank = True, editable = False)
|
|
|
+
|
|
|
+ class Meta :
|
|
|
+ verbose_name = 'Catégories'
|
|
|
+ verbose_name_plural = 'Catégories'
|
|
|
+
|
|
|
+ def save(self, *args, **kwargs) :
|
|
|
+ self.cb_titre_slugify = slugify(self.cb_titre)
|
|
|
+ super(Cat_Blog, self).save(*args, **kwargs)
|
|
|
+
|
|
|
+ def __unicode__(self):
|
|
|
+ return self.cb_titre
|
|
|
+ def __str__(self):
|
|
|
+ return '%s' % (self.cb_titre)
|
|
|
+
|
|
|
+class Blog(models.Model) : #Architecture pour le blog
|
|
|
+ b_titre = models.CharField("Titre", max_length = 128, unique = True)
|
|
|
+ b_titre_slugify = models.CharField("Titre Slugify", max_length = 128, blank = True, editable = False)
|
|
|
+ b_mots_clefs = models.CharField("Mots clefs", max_length = 512, blank = True)
|
|
|
+ b_cat = models.ManyToManyField(Cat_Blog)
|
|
|
+ b_description = models.TextField("Description", blank = True)
|
|
|
+ b_contenu = models.TextField("Contenu", blank = True)
|
|
|
+ b_right = models.TextField("Contenu à droite", blank = True)
|
|
|
+ b_publier = models.BooleanField("Publié", default = False)
|
|
|
+
|
|
|
+ class Meta :
|
|
|
+ verbose_name = 'Gestion du Blog'
|
|
|
+ verbose_name_plural = 'Gestion du Blog'
|
|
|
+ ordering = ['b_titre_slugify']
|
|
|
+
|
|
|
+ def save(self, *args, **kwargs) :
|
|
|
+ self.b_titre_slugify = slugify(self.b_titre)
|
|
|
+ super(Blog, self).save(*args, **kwargs)
|
|
|
+
|
|
|
+ def __unicode__(self):
|
|
|
+ return self.b_titre
|
|
|
+ def __str__(self):
|
|
|
+ return '%s' % (self.b_titre)
|
|
|
+
|
|
|
+
|
|
|
+class Blog_Admin_Form(forms.ModelForm):
|
|
|
+ class Meta:
|
|
|
+ model = Blog
|
|
|
+ exclude = ['b_titre_slugify']
|
|
|
+ widgets = {
|
|
|
+ 'b_contenu': TrumbowygWidget(),
|
|
|
+ 'b_right': TrumbowygWidget(),
|
|
|
+ }
|