コード例 #1
0
ファイル: admin.py プロジェクト: DTailor/fafsite
 def save_model(self, request, obj, form, change):
     obj.save()  # User save
     userExtended = UserExtended(obj.id)
     for userMetaType in UserMetaType.objects.all():
         if userMetaType.key in request.POST and request.POST[userMetaType.key] != '':
             if userMetaType.multiple:
                 setattr(userExtended, userMetaType.key, request.POST.getlist(userMetaType.key))
             else:
                 setattr(userExtended, userMetaType.key, request.POST[userMetaType.key])                 
             userExtended.save()
         else:
             userExtended.delMeta(userMetaType.key)
コード例 #2
0
ファイル: admin.py プロジェクト: DTailor/fafsite
class UserAdminForm(forms.ModelForm):
    userExtended = None
    class Meta:
        model = User

    def __init__(self, *args, **kwargs): # * - tuple, ** - dictionary
        super(UserAdminForm, self).__init__(*args, **kwargs)
        # Set the form fields based on the model object
        if kwargs.has_key('instance'):
            instance = kwargs['instance']   # User instance
            self.userExtended = UserExtended(kwargs['instance'].id)

    def getAdditionalFieldsets(self):
        if self.userExtended != None:
            meta_types = getMetaTypes()
            user_meta_types = self.userExtended.getAttributes()
            result = {}
            for key in meta_types:
                if key in user_meta_types:
                    result[key] = user_meta_types[key]
                else:
                    result[key] = meta_types[key]
            return result
        else:
            return getMetaTypes()
コード例 #3
0
ファイル: admin.py プロジェクト: DTailor/fafsite
 def __init__(self, *args, **kwargs): # * - tuple, ** - dictionary
     super(UserAdminForm, self).__init__(*args, **kwargs)
     # Set the form fields based on the model object
     if kwargs.has_key('instance'):
         instance = kwargs['instance']   # User instance
         self.userExtended = UserExtended(kwargs['instance'].id)