, 나는이 모델이 있습니다초보자 장고 스마트/체인 메뉴 문제
from django.db import models
class Health_plan(models.Model):
name = models.CharField(max_length=15)
class Doctors_list(models.Model):
name = models.CharField(max_length=30)
specialty = models.CharField(max_length=15)
health_plans = models.ManyToManyField(Health_plan, related_name="doctors")
location = models.CharField(max_length=15)
def __unicode__(self):
return self.name
을 그리고 이것은 내 forms.py
:
class SpecForm(ModelForm):
a = Doctors_list.objects.values_list('specialty', flat=True)
unique = [('---------------','---------------')] + [(i,i) for i in set(a)]
specialty = forms.ChoiceField(choices=unique)
class Meta:
model = Doctors_list
class HealthForm(ModelForm):
hplan = ChainedForeignKey(
Health_plan,
chained_field="specialty",
chained_model_field="specialty",
show_all=False,
auto_choose=True
)
내 urls.py
:
from django.conf.urls import patterns, include, url
from testApp.views import spec_form
from testApp.views import health_form
from django.contrib import admin
admin.autodiscover()
urlpatterns = patterns('',
# Examples:
url(r'^$', 'Medbook.views.home', name='home'),
# url(r'^Medbook/', include('Medbook.foo.urls')),
url(r'^admin/doc/', include('django.contrib.admindocs.urls')),
url(r'^admin/', include(admin.site.urls)),
url(r'^hello/$', spec_form),
url(r'^hello/$', health_form),
)
및 내 views.py
:
from django.shortcuts import render_to_response
from testApp.forms import SpecForm
from testApp.forms import HealthForm
def spec_form (request):
if request.method == 'POST':
form = SpecForm(request.POST)
if form.is_valid():
form.save()
else:
form = SpecForm()
return render_to_response('hello.html', {'form':form})
def health_form (request):
if request.method == 'POST':
form = HealthForm(request.POST)
if form.is_valid():
form.save()
else:
form = SpecForm()
return render_to_response('hello.html', {'form':form})
나는 장고를 처음 사용하며이 까다로운 것으로 알고 있습니다. 사용자는 하나의 전문 분야를 선택해야하며 그 전문 분야를 다루는 health_plans가 나타나야합니다.
health_plans는 의사와 수 많은 관계가 있습니다. 사람이 전문 분야를 선택하면 대본 작성자는 해당 전문 분야에 속한 의사를 확인하고 의사가 보유한 모든 건강 보험을 회수해야합니다.
지금까지 내가 메뉴에 얻을 수있는 유일한 것은입니다 : 분명히, 내 코드가 아닌 내가 만든 희망 Health_plan object Health_plan object Health_plan object
.
어떤 도움을 친절이 연쇄 선택과는 아무 상관이 없으며, 여기에 대부분의 코드는 무관하다
어떤 힌트? 읽을 구체적인 문서? – ClaudioA