0

我正在创建一个表单并尝试动态预填充它。

示例:如果用户选择('Front End'、'Front End'),我们将返回 css、html、javascript 给他们,他们可以选择角色所需的相关语言(通过复选框、多选)。

我认为我创建的模型不够多。另外我认为这将采用两种形式,一种用于创建所有这些数据,另一种用于返回以显示供用户使用。

#models.py 

TITLE_CHOICES = (('Select', 'Select'),
    ('Front End', 'Front End'),
    ('Back End', 'Back End'),
    ('Mobile', 'Mobile'),
    ('Other', 'Other')
    )


class Role(models.Model):
    profiletitle = models.CharField(max_length=25, null=True, choices=TITLE_CHOICES, default='Select')

    def __unicode__(self):
        return self.profiletitle

我的问题在于我的形式。我需要与配置文件“语言”相关的第二个下拉菜单。我不确定如何使用 manytomanyfield 将 profiletitle 选择与语言相关联。

语言下拉/复选框应仅显示与所选配置文件标题相关的语言。

感谢阅读/帮助。

PS。我正在尝试使用 Django 来做到这一点,没有 JavaScript,我正在使用 App Engine。(没有连接)

4

1 回答 1

1

如果您尝试在没有任何 JS 的情况下在 Django 中执行此操作,则必须让表单提交。并加载第二个表格。

我不确定您使用的是基于类的视图还是功能视图,但无论如何,您的逻辑应该是:

  1. 表格1:让用户选择角色(即前端,后端等,..)并按提交(发布表格)
  2. 当您在 django 视图中处理此表单时,选择所选选项(前端、后端等)并查询相关语言并将该查询集/选项用作语言表单输入的选项并将视图重定向到本表格(表格 2)。

我不知道您为什么不想要 javascript,但您可以在动态表单上查看此链接(以及其他许多链接)

注意:由于我没有看到任何代码,我只能建议您按照这个方向进行,猜测您会按照我给您限制的方式去做。

于 2013-10-04T21:37:51.703 回答