2014-06-30 15 views
8

Die admin.py ist wie folgt: -kann nicht inline hinzufügen Siggy Rahmen 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) 

Die models.py ist wie folgt: -

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'' 

ich die extra Seite zeigen wollen Details inline im Admin für das Site-Framework. Es gibt keinen Fehler. Die Website-Details werden jedoch nicht inline angezeigt. Bitte lassen Sie mich wissen, welchen Fehler ich mache. Danke im Voraus.

+0

bitte helfen, ich bin schlecht mit diesem – user2223867

+0

fügen Sie Ihren Code für SiteDetailForm –

+0

funktioniert es stecken arbeiten, wenn Sie die Zeile 'Form comment = ...'? – FSp

Antwort

1

Versuchen Sie, diese

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