PJBlog : Pierre-Jean, WinLibre et Cie...

Pierre-Jean Coudert - Logiciels Libres - Développement - etc...

Aller au contenu | Aller au menu | Aller à la recherche

dimanche, septembre 27 2009

Django code snippets for Notepad++

Here is the content for my Quicktext.ini. This adds Django shortcuts to Notepad++ with the QuickText Plugin.

ie: type model + <TAB> to insert the following model's skeleton:


class ModelName(models.Model):
    """Model docstring"""
    slug = models.SlugField(max_length=200)
    name = models.CharField(max_length=100, default='name')

    updated = models.DateTimeField('update date', auto_now=True )
    created = models.DateTimeField('creation date', auto_now_add=True )

    class Meta:
        pass

    def __unicode__(self):
        return name

    def save(self, force_insert=False, force_update=False):
        pass

    @models.permalink
    def get_absolute_url(self):
       return ('view_or_url_name')


class ModelNameAdmin(admin.ModelAdmin):
    list_display = ('name',)
    search_fields = ['name',]

admin.site.register(ModelName, ModelNameAdmin)

Lire la suite...

jeudi, août 20 2009

Django SEO : Link Exchange

I've just published a Django SEO application : Django Link Exchange

This little Django SEO App enables you to manage deep links exchange.

You can edit directly with Django's admin the following informations:

  • Campaigns: site informations
  • Links : anchor, url, additional text
  • Links customization: specific css classes, target, additional javascript (ie: tracker)
  • BackLinks : url, anchor
  • Check Backlinks automatically via Admin's Action (I'm using http://code.google.com/p/scrapemark/ to analyze the backlinking page)

To Install this application, copy it in a directory which is on your PYTHONPATH.

Next, edit your project's settings. and add:

   INSTALLED_APPS += ('link_exchange')

In your template's files:

  • you can publish a link directly in the template with it's name
     {%load link_ex%}
     {%link "name"%}
  • you can publish a link through an object's field containing html AND the {%link "name"%} tag
     {%load link_ex%}
     {% autoescape off %}
     {%evaluate object.textfield%}
     {% endautoescape %}

lundi, mars 30 2009

10 liens indispensables, en français, pour bien développer avec Django

Le camp de base

  • Django-fr : Pour commencer, LE site sur Django pour les francophones

Apprendre

Documentation et Référence

Bonne pratiques

Installer Django sur un serveur

Réutiliser des application existantes

Et pour finir, un site anglophone mais non des moindres

  • Django snippets : Le recueil de tous les extraits de codes utiles dont vous pourrez avoir besoin lors d'un développement Django.

jeudi, février 19 2009

Ecoles de ski, Django, Fixtures et champs ManyToMany...

Après avoir galéré sur les fixtures django sur les champs ManyToMany, j'ai pu mettre en ligne la mise à jour de la base de données de Resaski.

Voici un modèle simplifié :

class Language(models.Model):
  code = models.SlugField(primary_key=True, max_length=10)
  name = models.CharField(max_length=200)

class School(models.Model):
  slug = models.SlugField(primary_key=True, max_length=200)
  languages = models.ManyToManyField(Language)

et un ensemble de fixtures json associé :

[
 {"model": "myapp.language",
  "pk":"fr",
  "fields":{"name": "Français","code": "fr"}
 },
 {"model": "myapp.language",
  "pk":"en",
  "fields":{"name": "Anglais","code": "en"}
 },
 {"model": "myapp.School",
  "pk":"ecole-1",
  "fields":{"slug":"ecole-1", "languages":[fr]}
 },
 {"model": "myapp.School",
  "pk":"ecole-2",
  "fields":{"slug":"ecole-2", "languages":["fr","en"]}
 }
]

L'ensemble des stations et des écoles de ski à été mis à jour, notamment  : Ecole de ski Tourmalet Risoul Le Grand Bornand Morzine Saint Gervais La Rosière Les Carroz d'Arraches Valloire Contamines Montjoie Les Gets Vars - Crevoux Valmorel Serre Chevalier Samoëns Châtel Megève Vos cours de snowboard à La Clusaz Les Saisies Les Menuires Val d'Isère Alpe d'Huez Vos cours de ski sur Avoriaz Les Deux Alpes Meribel La Plagne Ecole de ski Courchevel Chamonix Les Arcs Val Thorens Les écoles de ski à Tignes

mardi, juin 5 2007

Tutoriel : Installation de Django sous Windows

Vous voulez gouter aux joies du développement web en Python avec un des meilleurs Framework actuel ?

Voici un petit tutoriel en pas à pas pour installer Django sur votre PC sous Windows:

  1. Télécharger et installer Python
  2. Télécharger et installer Tortoise SVN
  3. Créer un dossier "django" où bon vous semble et récupérer la dernière version du code Django depuis le serveur Subversion :
    • cliquer avec le bouton droit sur votre dossier "django"
    • choisissez "SVN checkout..."
    • Copier l'adresse "http://code.djangoproject.com/svn/django/trunk/" dans le champ "URL of repository:"
    • Valider pour charger la dernière version du code django
  4. Modifier la variable d'environnement "Path" :
    • Aller dans le panneau de configuration
    • cliquer sur l'icone "Système"
    • dans l'onglet "Avancé" cliquer le bouton "Variables d'environnement"
    • dans la boite double cliquer sur la variable "Path"
    • ajouter ;C:\Python25;C:\Python25\Lib\site-packages\django\bin à la valeur de la variable
  5. Nous allons maintenant installer django
    • ouvrir une ligne de commande "Menu Démarrer > Accessoires > Ligne de Commande"
    • taper "cd vers_votre_repertoire\django"
    • taper "python setup.py install"
    • django est installé
  6. Installer Mysql
  7. Installer mysql-python

Tout est maintenant installé !

Vous pouvez commencer à vous amuser : http://www.djangoproject.com/documentation/

Les liens indispensables