我需要实现一个具有“其他”选项的选择框。如果选择此选项,则用户应该能够在文本字段中键入其他选项。我关心的是如何实现保存到数据库中。我正在寻找独特而有效的方法来处理这种实现。
我相信我最后一次实现这个时,我的表中有两列,一列用于选择框,另一列用于文本字段输入。
有人能想到更好的方法吗?
答案 0 :(得分:2)
我会有一个参考表,用你的字段填充你的选择框:id,item,primary。其中'primary'是bool,表示它是否应该包含在您的下拉列表中。
然后,当用户输入其他项目时,这些项目将被添加到您的参考表格中,其中“primary”字段为false。
这个实现的好处在于它在概念上是干净的 - 只有一个字段存储您的项目值,如果您的许多用户为其他人添加特定字段,您只需翻转'主要'布尔为true,它将出现在您的主下拉列表中。
答案 1 :(得分:1)
假设您有某种元数据表驱动您的选择框选项,您可以添加逻辑,将新的“其他”选项插入该表,然后在您的主表中引用新添加的项目的主键表格输入数据。
如果您不想在每次“其他”提交时混淆元数据表,那么我相信您的方法很好 - 只是一个单独的可存储列,用于存储“其他”值。