使用Django 1.1.1
在模型中
class Site(models.Model):
name = models.CharField(max_length=50)
class SiteMonth(models.Model):
site = models.ForeignKey(Site)
timestamp = models.DateTimeField()
parameter1 = models.IntegerField()
....
现场查看:
#form for selecting which site to analyse
class SiteForm(forms.Form):
site = forms.ModelChoiceField(queryset=Site.objects.all())
#form for selecting which site month to analyse
class SiteMonthForm(forms.Form):
month = forms.ModelChoiceField(queryset=SiteMonth.objects.all())
def site(request,site=None):
siteForm = SiteForm(request.GET)
if not site==None:
siteMonthForm = SiteMonthForm(request.GET)
.....
在Urs.Py:
(r'^site/$', 'my_project.site_view.site'),
(r'^site/(?P<site>\d+)/', 'my_project.site_view.site'),
所以我要做的是制作一个页面,可以用来查看特定站点的详细信息。如果URL中没有提供站点ID,则存在一个表单来选择一个,然后该表单将重定向到正确的URL(通过模板中的javascript)。
一旦选择了一个站点,我想做的就是在页面中有一个表单,允许选择属于该站点的SiteMonth对象,以便进一步调查。当前列表上方的我的代码
全部的
所有站点的SiteMonth对象。如何将sitemonth表单设置为只填充与get请求中给定的站点ID相关的值?
我可以想出一些方法来做到这一点,既不特别优雅-什么是正确的德扬戈方式?