菜鸟Django智能/连锁菜单旅行团

2024-04-25 07:56:44 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试创建一个链式选择菜单,我有这个模型:

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

^{pr2}$

我的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})

我是Django的新手,我觉得这很棘手。用户必须选择一个专业,然后应显示涵盖该专业的健康计划。在

健康计划与医生有着千丝万缕的联系。当一个人选择一个专业时,脚本应该检查哪些医生属于该专业,并检索这些医生持有的所有健康计划。在

到目前为止,我在菜单上看到的只有:Health_plan object Health_plan object Health_plan object

我希望我说得很清楚,因为我的代码不是这样

如有任何帮助,不胜感激


Tags: djangonamefromimportformurladminmodels
1条回答
网友
1楼 · 发布于 2024-04-25 07:56:44

这与链式选择无关,这里的大部分代码都是无关的。问题是,虽然Doctors_list有一个__unicode__方法,Health_plan没有。为该模型定义一个。在

(还要注意,模型名的通常样式是CapWords:DoctorsList和{}。虽然前者实际上只指一个医生,所以应该是Doctor。)

相关问题 更多 >