我是django编程的新手,我有一个简单的问题。
我有模特
class Dhcp(models.Model):
class Meta:
ordering = ('gateway',)
verbose_name = _(u'DHCP Configuration')
verbose_name_plural = _(u'DHCP Configurations')
gateway = models.IPAddressField(_(u'Gateway'), null=True)
dns_primary = models.IPAddressField(_(u'DNS Primary'), null=True)
dns_second = models.IPAddressField(_(u'DNS Second'), blank=True)
leases_time = models.IntegerField()
nat = models.IPAddressField(_(u'NAT'), blank=True)
max_time = models.IntegerField()
def __unicode__(self):
return self.gateway
我的问题是:
我想列出数据库中的所有dhcp对象,并添加更多对象。但我想在同一个模板上做到这一点。
例如:如果我在数据库中有3个对象,则显示并显示表单以添加更多对象。当我从表单中添加一个对象时,我想显示添加的对象。
谢谢!
Dusan Ristic
答案 0 :(得分:0)
查看Class Based Views,更具体地说是ListView和CreateView。这个问题经常出现,所以你应该在这里找到答案。 Check this post out
您正在寻找的是这样的:
class DHCPView(forms.CreateView):
model = Dhcp
template_name = "list_and_create_dhcp.html"
def get_context_data(self, **kwargs):
kwargs["object_list"] = Dhcp.objects.all()
return super(DHCPView, self).get_context_data(**kwargs)