Python 来自数据库模型的google应用程序引擎渲染复选框

Python 来自数据库模型的google应用程序引擎渲染复选框,python,google-app-engine,django-forms,Python,Google App Engine,Django Forms,我正在开发我的第一个谷歌应用程序引擎项目,我想我误解了数据库和表单模型的一些基本概念。我有以下python代码: class RegData(db.Model): title = db.StringProperty() forename = db.StringProperty() surname = db.StringProperty() interest = db.StringListProperty(choices=['TV','COMPUTING','SOC

我正在开发我的第一个谷歌应用程序引擎项目,我想我误解了数据库和表单模型的一些基本概念。我有以下python代码:

class RegData(db.Model):
    title = db.StringProperty()
    forename = db.StringProperty()
    surname = db.StringProperty()
    interest = db.StringListProperty(choices=['TV','COMPUTING','SOCCER'])

class RegForm(djangoforms.ModelForm):
    class Meta:
        model = RegData
我想做的是让表单将“interest”属性呈现为一组复选框,而不是文本区域。这可能吗


谢谢。

从django导入表单作为表单

必须在models.py中添加上述模块

models.py

interest=(
            ('Tv', 'TV'),
            ('Computing', 'COMPUTING'),
            ('Soccer', 'SOCCER'),
                        )
class RegData(db.Model):
    title = db.StringProperty()
    forename = db.StringProperty()
    surname = db.StringProperty()
    interest = db.StringListProperty()

class RegForm(djangoforms.ModelForm):
    interest= form.CheckboxSelectMultiple(choices=interest)
    class Meta:
        model = RegData
RegData是数据库(实体)中的表,RegForm是用户将在页面上看到此表单的表

main.py

class ShowForm(webapp.RequestHandler):
    def get(self):
        show(self)
    def post(self):
        show(self)

 def show(self):
    get = self.request.GET
    post = self.request.POST


    data = models.RegData()

    if post:
        form = models.RegForm(data=post, instance=RegDate)

        if form.is_valid():
            entity = form.save(commit=False)
            entity.put()

    else:
        form = models.RegForm(instance=RegDate)