首頁  >  問答  >  主體

java - 動態表單應該如何設計資料庫?

需求是這樣的

  1. 在背景管理介面輸入表單訊息,規定有哪些表單 (可以增刪)

  2. 在前端顯示哪些表單的可以填入

  3. 最後把填寫的表單(產生的真實資料)存入資料庫

  4. #最後填入的資料需要能夠方便查詢,排序,過濾的資料

#我在網路上找了挺多資料都不太符合我的需求。
有沒有設計大神提供設計的想法! ! !

PHP中文网PHP中文网2712 天前1214

全部回覆(4)我來回復

  • 高洛峰

    高洛峰2017-05-17 10:09:19

    1、先定義一張控製表,如單行文本,多行文本,單選,多選,時間等
    2、再定義一張配置表,用來定義一個Form有哪些字段,以及字段名字(用來顯示,如姓名,性別),控制項類型,欄位預設值,欄位長度,是否必填等資訊
    3、然後在後台把對應設定表新增的記錄存到另一張記錄表,記錄表裡存放的可能有多個單行文本,多個單選等記錄(多餘)
    4、接著根據記錄表的資訊顯示Form,
    5、最後填寫完Form提交的時候,再把填寫的資料保存起來就可以了,
    6、當需要顯示填寫的資料的時候,根據配置表和Form對應的記錄,把對應的資料顯示在對應的控制項中


    補充

    回覆
    0
  • 阿神

    阿神2017-05-17 10:09:19

    補充一下關於查詢這塊。基本想法和一樓一致。但是資料的篩選查詢確實是一個問題 這樣的話可以考慮加一個專門負責檢索的表格

    id 主鍵自增 search_id 是資料id filed_id 是 欄位 的id data 就是資料值了

    當前台加完這條資料的時候 在執行回調把 相關資料 插進這個表裡 負責搜尋就好了 這個表該加索引就加索引
    應該夠用了

    回覆
    0
  • 淡淡烟草味

    淡淡烟草味2017-05-17 10:09:19

    最好把數據存儲到mongo 如果存儲關係數據庫那就是個大坑,另外一定要存儲一份匯總數據,然後在單獨把表單數據存儲一份,比如我新建了10個表單那麼就存儲10個集合

    回覆
    0
  • 天蓬老师

    天蓬老师2017-05-17 10:09:19

    支援mongodb存儲,像商品屬性這些各種顏色各種尺寸的用mongodb存儲相當愉快
    另,不是所有查詢邏輯都寫在SQL端才行,有一些邏輯提取出來寫在代碼層你會發現性能提升不少,可以少了不少join操作。

    回覆
    0
  • 取消回覆