2016-07-21 2 views
0

Я хочу изменить заголовок плагина в админке для его детей. Я хочу, чтобы проверить это плагин имеет детей, если истинное шоу названия, как подмигнули название:Как получить название из дочернего плагина для использования в django-cms admin?

Я подошел к этому:

class ParentClass(CMSPlugin): 

def __unicode__(self): 
    inner_content = "" 
    if ... >= 1: 
     for child in children: 
      inner_content += child.title 
    else: 
     inner_content = "empty" 
    return unicode(inner_content) 

class ChildClass(CMSPlugin): 
title = "X" 

ли что-то подобное возможно?

ответ

0

Как о чем-то вроде этого:

class ParentClass(CMSPlugin): 

    def __unicode__(self): 
     inner_content = '' 

     if self.child_plugin_instances is not None: 
      for child in self.child_plugin_instances: 
       inner_content += child.title 

     inner_content = inner_content or "empty" 
     return unicode(inner_content) 
+0

Спасибо. Для того, чтобы гарантировать, что я получил правильный выход я изменил его: определение функции __unicode __ (Я): inner_content = [] если self.child_plugin_instances не является None: для ребенка в self.child_plugin_instances: inner_content.append (ребенок .__ unicode __()) inner_content = ',' .join (inner_content) или "empty" return str (inner_content) ' –