이 모델은 내가 함께 일하고 있습니다 장고 관리자 페이지에서 데이터를 볼 수 없습니다 : 여기장고 여기
class Customer(models.Model):
customer_id = models.AutoField(primary_key=True, unique=True)
full_name = models.CharField(max_length=50)
user_email = models.EmailField(max_length=50)
user_pass = models.CharField(max_length=30)
def __str__(self):
return "%s" % self.full_name
class CustomerDetail(models.Model):
phone_regex = RegexValidator(regex = r'^\d{10}$', message = "Invalid format! E.g. 4088385778")
date_regex = RegexValidator(regex = r'^(\d{2})[/.-](\d{2})[/.-](\d{2})$', message = "Invalid format! E.g. 05/16/91")
customer = models.OneToOneField(
Customer,
on_delete=models.CASCADE,
primary_key=True,
)
address = models.CharField(max_length=100)
date_of_birth = models.CharField(validators = [date_regex], max_length = 10, blank = True)
company = models.CharField(max_length=30)
home_phone = models.CharField(validators = [phone_regex], max_length = 10, blank = True)
work_phone = models.CharField(validators = [phone_regex], max_length = 10, blank = True)
def __str__(self):
return "%s" % self.customer.full_name
을 인 forms.py
: 내 응용 프로그램에서보기를
from django.forms import ModelForm
from .models import CustomerDetail
class CustomerDetailForm(ModelForm):
class Meta:
model = CustomerDetail
fields = ['address', 'date_of_birth', 'company', 'home_phone', 'work_phone',]
(사용자가 로그인 한 후) 사용자에게 추가 세부 정보를 묻는 create_profile
이라고하고 ModelForm 인스턴스를 사용하여 구현했습니다.
def create_profile(request):
if request.POST:
form = CustomerDetailForm(request.POST)
if form.is_valid():
address = form.cleaned_data['address']
date_of_birth = form.cleaned_data['date_of_birth']
company = form.cleaned_data['company']
home_phone = form.cleaned_data['home_phone']
work_phone = form.cleaned_data['work_phone']
profdata = CustomerDetail(address = address, date_of_birth = date_of_birth, company = company, home_phone = home_phone, work_phone = work_phone)
profdata.save()
return render(request, 'newuser/profile_created.html', {form: form})
else:
return redirect(create_profile)
내가 해당 템플릿 HTML의 양식을 작성하여 제출 공격, 그것은 나에게 연속 페이지를 보여줍니다,하지만 난 관리자 페이지에서 CustomerDetail 항목을 확인할 때, 난을 참조하십시오 여기에 views.py
의 조각이다 실제 기록 대신 '-'표시. 내가 여기서 어디로 잘못 가고 있니? 그것은 clean() 메소드를 오버라이드 (override)해야만 하는가? 도와주세요. 감사!
당신이 여기에 다른 부분에 무슨 일이 일어나고 있는지 설명 할 수 있습니까? –
@KrithikaRaghavendran은 다른 형태로 GET 응답을 위해 비어 있습니다. –
'form.save()'가 작동하지 않습니다. 관리자 페이지에 데이터 레코드가 나타나지 않습니다. –