如何使用预定义的值在mongodb模式中创建字段,并使用户使用单选按钮选择值

时间:2015-02-17 17:07:39

标签: javascript node.js mongodb mongoose nosql

我正在创建一个Schema来在管理仪表板中创建事件,我有以下架构:

{
 name: String,
 date: Date,
 price: String

}

一切都好,我已经创建了CRUD,但现在我需要在我的架构中添加一个Description字段。而且这个字段并不完全是动态的,我需要它有4个预定义的值:

Value 1: Blue
Value 2: Red
Value 3: Yellow
Value 4: Black

在我的表单上,我需要将用户选择[单选按钮]绑定到描述值。

我有4个预定义值,表格中有4个单选按钮。例如:

Radio1 [If the user choose this, the value of description field will be blue]
Radio2 [If the user choose this, the value of description field will be red]
Radio3 [If the user choose this, the value of description field will be yellow]
Radio4 [If the user choose this, the value of description field will be the description black]

一个更大的例子:

如果用户使用以下值创建活动:

In the name input field, value = 'Super big event'
in the date input field, value = '20/03/2015' (in date format)
in the price input field, value = '50 dollars',

在说明单选按钮中,他选择值为1的单选按钮,输出将为:

{
name: 'Super big event'
date: '20/03/2015' (in date format)
price: '50 dollars'
description: 'Blue'
}

我真的很感激,如果有人在这里给我一个手,我没有找到任何可以帮助我的谷歌。

1 个答案:

答案 0 :(得分:1)

每个框架都有很多架构包,所以我在选择定制之前首先建议检查。

您之后的一般模式涉及每个字段的单独对象。 所以,你的架构看起来像这样:

Schema = {
    name: {type: String},
    date: {type: Date},
    description: {type: String, possibleValues: ['blue','red','yellow','black']}
}

然后,当您验证时,您有一个查找possibleValues字段的函数。如果存在,则确保提交的值是possibleValues的成员。

同样,不需要自己构建,但如果您想要这样做,那就是您遵循的一般模式...

希望它有所帮助!