2014-06-30 137 views
8

的admin.py如下: -不能添加到内联Django的站点管理员框架

class SiteDetailInline(admin.TabularInline): 
    model = SiteDetail 
    form = SiteDetailForm 
    fields = ('name',) 
    can_delete = False 
    extra = 1 
    max_num = 1 

    def get_readonly_fields(self, request, obj=None): 
     if obj: 
      return ('clmsid',) + self.readonly_fields 
     return self.readonly_fields 

class SiteAdmin(admin.ModelAdmin): 
    inlines = [ SiteDetailInline, ] 
    def queryset(self, queryset): 
     return Site.objects.filter(~Q(id = settings.SITE_ID)) 
    signals.post_save.connect(create_sites_default_user, sender=Site) 

admin.site.unregister(Site) 
admin.site.register(Site, SiteAdmin) 

的models.py如下: -

class SiteDetail(models.Model): 
    name = models.CharField(max_length=100, unique=True) 
    client = models.ForeignKey(client) 
    site = models.ForeignKey(Site) 
    clmsid = models.CharField(max_length=15, unique=True, verbose_name='clms id', help_text='clms identifier',) # unique identifier L-XXXXXX-id 

    def save(self, *args, **kwargs): 
     if "L-" != self.clmsid[:2]: 
      self.clmsid = "%s-%s-%s" % ("L", self.accountid, self.id) 
     super(SiteDetail, self).save(*args, **kwargs) 

    def __unicode__(self): 
     return u'' 

我想说明的额外网站在网站框架的管理员中内嵌详细信息。它没有给出任何错误。但是,站点详细信息不以内联方式显示。请让我知道,我在做什么错误。提前致谢。

+0

请大家帮帮忙,我非常坚持的SiteDetailForm – user2223867

+0

请添加您的代码不,如果你对此有何评论行'形式= ...'工作? –

+0

这 – FSp

回答

1

试试这个

def get_fields(self, request, obj=None): 
    if obj: 
     return ('clmsid',) + self.fields 
    return self.fields