---------- Message transféré ----------
De : Alioune Dia <[email protected]>
Date : 15 décembre 2012 18:20
Objet : [DANGO Problème de Travailler avec les Intégrateur Pour un
Développeur]
À : La liste de discussion autour de Logiciels Libres à Dakar <
[email protected]>


Hii)

La problème a la quelle beaucoup de développeurs sont  confronté lorsque
ils
doivent mettre en place un site en quelques minutes est le front /HTML
css, image  .En général le  développeur n'est pas bon dans ses choses la ,
et
même si il s'y colle , le  résultat est en général merdique ( Tres Moche ).

L'alternatif qui s'offre a eux comme l'a dit un fois Jacob Kaplan Moss est
d'utiliser  l'applications contrib.admin afin de profiter au maximum des
avantages
de cette application . L’expérience est plutôt enrichissante parce que en
réalité il est possible pour une développeur de développer entièrement
une application sans tapper une seule ligne de code Html .Et dans un
environnement de production  c'est plutôt utile:

Exemple:
Un cas  simple comme celui ci :
https://github.com/aliounedia/lesshtml

lesshtml:
   __init__.py
  admin.py
  forms.py
  views.py

models.py
=========

from django.contrib import admin
from models import Person
class PersonAdmin(admin.ModelAdmin):
    def old_person_column(self):
        if self.age >30:
            column ='<span style="background:#0B6121;" >'\
                    '<a href ="/person/detail/%s">%s</a></span>'%(
                        self.pk , self.name)
        else:
            column = '<span style="background:#DF0101;" >'\
                     '<a href ="/person/detail_old/%s">%s</a></span>'%(
                         self.pk , self.name)
        return column.lower()

    old_person_column.short_description ='Person'
    old_person_column.allow_tags        =True

    def africa_contry(self):
        if self.country in ('SENEGAL' , 'MALI', 'MAURITANIE'):
            column = '<a href ="/person/detail_contry/%s">%s</a></span>'%(
                        self.pk , self.country)
        else:
            column = '<a href ="/person/detail_contry/%s">%s</a></span>'%(
                        self.pk , self.country)
        return column.lower()

    africa_contry.short_description ='Africa'
    africa_contry.allow_tags         =True


    def name_column(self):
        return self.name.lower()

    def country_column(self):
        return self.country.lower()

    list_display = ('pk' , name_column , country_column ,
                    old_person_column ,
                    africa_contry )
    fields = ['name']

    class Meta:
        css = {
              'all': (
            'css/person.css',)

        }
        js = (
        'js/person.js',

    )
admin.site.register(Person, PersonAdmin)


models.py
=========

from django.db import models

class Person(models.Model):

      name = models.CharField(max_length =20)
      age  = models.IntegerField(default =0)
      country  = models.CharField(max_length = 200)

      def __unicode__(self):
          return u'<Person  |name :%s | Age :%s>' %(self.name, self.age)



On arrive  facile a développer une application  solide en ne faisant de du
customisation
.Je suis sure que beaucoup développeurs voudraient temps soit peu
développer très
rapidement sans être limités par des intégrateurs : ) , ils peuvent nous
mener
la vie difficile ces gens .En tout cas pour moi tout développeur conscient
du problème
devrais réfléchir sur l'alternative que nous offre django pour avoir plus
de liberté
de  délirer dans dans le code

Le Barcamp sera une occasion pour nous d'en discuter!

https://github.com/aliounedia/lesshtml
https://github.com/aliounedia

Enjoy
--Ad
--
Ce message a été envoyé à la liste [email protected]
Gestion de votre abonnement : http://dakarlug.org/liste
Archives : http://news.gmane.org/gmane.org.user-groups.linux.dakarlug
Le site du DakarLUG : http://dakarlug.org

Répondre à