2010-03-05 33 views
7

Estoy construyendo un sitio basado en una instancia de Django administrador altamente personalizado y estoy corriendo en problemas con perfiles de usuario como una línea a user_adminDjango admin - stackedInline única instancia

larga historia corta, independientemente de lo que se propuso para MAX_NUM y extra en la instancia admin.StackedInline permite hasta 2 perfiles por usuario, con un espacio en blanco establecido por defecto si el usuario tiene un perfil existente

Alguien sabe cómo podría ajustar esto para mostrar solo un único perfil en línea sin recurrir a algunos JS front-end hack?

código pertinente de: profiles.admin.py

from django.contrib import admin 
from django.contrib.auth.models import User 
from django.contrib.auth.admin import UserAdmin 
from profile.models import user_profile 

class user_profile_admin(admin.StackedInline): 
    model = user_profile 

    fk_name = 'user' 
    max_num = 1 
    extra = 0 

class user_admin_extended(UserAdmin): 
    inlines = [user_profile_admin, ] 

admin.site.unregister(User) 
admin.site.register(User, user_admin_extended) 

Respuesta

5

Asumo que está utilizando para conectar FK campo de usuario y crear un perfil? Pruebe OneToOneField debería representar solo uno en línea en el administrador.