0

我正在尝试创建一个“管理”页面,用户可以在其中创建一个“匹配”,为其命名,并将我创建的匹配列表显示到另一个页面。我还想要一个“删除”按钮来删除匹配项。

我有这个模型:

class Match(models.Model):
    teams = models.ManyToManyField(Teams)
    identite = models.CharField(max_length=60)
    teamA = models.CharField(max_length=20)
    teamB = models.CharField(max_length=20)
    info = models.CharField(max_length=500)
    sport = models.CharField(max_length=20)
    date_start = models.DateTimeField()
    date_end = models.DateTimeField()

    def __unicode__(self):
        return self.identite

我在模型中创建了这个函数:

def create_match(self,name):
    return self.create('name')

然后,我尝试在管理页面的 html 中创建一个表单:

 <form method="post" action=".">
 {% csrf_token %}
 <p><label for="Team A">Team A:</label> <input id="Team A" type="text" class="required"   name="Team A" maxlength="30"></p>
 <p><label for="Team B">Team B:</label> <input id="Team B" type="text" class="required" name="Team B" maxlength="30"></p>
  (...)
 <input type="submit" value="" />
 </form>

所以我的问题是:

如何调用我的函数“create_match”,以便当我单击提交按钮时,它会在我的数据库中创建与我填写的数据的匹配项?如何将此匹配添加到列表中,以便可以将此列表显示到其他页面?最后,我怎样才能从这个列表中删除匹配而不从数据库中删除它?

非常感谢您的帮助!

4

1 回答 1

0

Django 提供了基于模型生成表单的内置功能,这些模型称为模型表单

此外,通常要“创建”新模型,只需实例化您的模型类并分配正确的值并保存它。

django 还提供了一个内置的管理页面,允许您注册模型并允许用户在您的数据库中创建/删除/修改记录。将模型添加到 django 管理员并获得此功能是微不足道的。

于 2012-10-12T13:31:28.870 回答