2017-03-19 2 views
1
@python_2_unicode_compatible 

class EmployerProfile(AbstractAddress): 
    customer = models.OneToOneField(
     CustomerProfile, verbose_name=_('Customer'), 
     related_name='employerprofile') 

    company_name = models.CharField(_('Company name'), 
            max_length=50, blank=True, null=True) 
    phone = PhoneField(_('Phone'), max_length=50, blank=True, null=True) 
    phone_extension = models.CharField(_('Extension'), max_length=10, 
             blank=True, null=True) 
    job_title = models.CharField(_('Job title'), max_length=50, blank=True, 
           null=True) 
    date_hired = models.DateField(_('Date hired'), blank=True, null=True) 
    supervisor_name = models.CharField(_('Supervisor name'), max_length=50, 

... 
             blank=True, null=True) 
    has_missing_fields = models.BooleanField(_('Has missing informations'), 
              default=True) 
    manual_validation = GenericRelation(ManualFieldValidation) 

내가정의되지 않은 이름 '인수'여기

def clean_fields(self): 
     if income_source != 'Employed': 
      to_empty = [ 
       "company_name", 
       "job_title", 
       "date_hired", 
       "supervisor_name", 
       "phone", 
       "phone_extension", 
       "civic_number", 
       "street", 
       "address_line_2", 
       "city", 
       "state", 
       "zip_code", 
       ... 
      ] 
      for field_name in to_empty: 
       setattr(self, field_name, None) 
     super(EmployerProfile, self).save(*args, **kwargs) 

사람이 내가 선 super(EmployerProfile, self).save(*args, **kwargs)에 대한 이러한 유형의 오류가 이유를 말할 수있을 수있는 메타 클래스를 사용하여 수정하고자하는 기능입니다? 나는 문제가 무엇인지 알아 내는데 약간의 시간이 걸렸지 만 성공하지는 못했습니다.

+0

당신은 'save_ methods'를 'clean_fields'에서 super라고 부릅니다 - 그 라인을 모두 제거하십시오. 너는 그럴 필요가 없다. – karthikr

+0

@karthikr 왜 그런 말을하는거야? –

답변

0

주어진 이유로 오류가 발생합니다 : args이 전역 또는 로컬 범위에서 정의되지 않았습니다. 어느 쪽도 kwargs 다.

관련 문제