Skip to content
Extraits de code Groupes Projets
admin.py 1,31 ko
Newer Older
Arnaud Fabre's avatar
Arnaud Fabre a validé
# coding: utf-8
from __future__ import absolute_import

from autocomplete_light import shortcuts as ac
Arnaud Fabre's avatar
Arnaud Fabre a validé
from django.contrib import admin
Arnaud Fabre's avatar
Arnaud Fabre a validé
from django.core.urlresolvers import reverse

from .models import Recommendation, MemopolDossier
Arnaud Fabre's avatar
Arnaud Fabre a validé

Arnaud Fabre's avatar
Arnaud Fabre a validé
def link_to_edit(obj, field):
    try:
        related_obj = getattr(obj, field)
        url = reverse(
            'admin:{}_{}_change'.format(
                related_obj._meta.app_label,
            related_obj._meta.object_name.lower()
            ),
            args=(related_obj.pk,)

        )
        return '&nbsp;<strong><a href="{url}">{obj}</a></strong>'.format(url=url,obj=related_obj)
Arnaud Fabre's avatar
Arnaud Fabre a validé
    except:
        return '???'
Arnaud Fabre's avatar
Arnaud Fabre a validé
class MemopolDossierAdmin(admin.ModelAdmin):
    list_display = ('name', 'dossier_ptr')
Arnaud Fabre's avatar
Arnaud Fabre a validé
    search_fields = ('name',)
    fields = ('dossier_ptr', 'name')
    readonly_fields = ('dossier_ptr',)
Arnaud Fabre's avatar
Arnaud Fabre a validé

class RecommendationsAdmin(admin.ModelAdmin):
Arnaud Fabre's avatar
Arnaud Fabre a validé
    def link_to_proposal(self):
        return link_to_edit(self, 'proposal')
    link_to_proposal.allow_tags = True

Jamesie Pic's avatar
Jamesie Pic a validé
    list_display = ('id', 'title', 'proposal', 'recommendation','weight')
Arnaud Fabre's avatar
Arnaud Fabre a validé
    search_fields = ('title', 'recommendation', 'proposal')
    form = ac.modelform_factory(Recommendation, exclude=[])
Arnaud Fabre's avatar
Arnaud Fabre a validé

Arnaud Fabre's avatar
Arnaud Fabre a validé
admin.site.register(MemopolDossier, MemopolDossierAdmin)
Arnaud Fabre's avatar
Arnaud Fabre a validé
admin.site.register(Recommendation, RecommendationsAdmin)