產(chǎn)品功能設(shè)計(jì)之——表格導(dǎo)入功能,你真的會(huì)了嗎?
編輯導(dǎo)語(yǔ):表格導(dǎo)入是日常生活中我們常接觸的功能之一,在導(dǎo)入過(guò)程中,我們可能會(huì)遇到數(shù)據(jù)重復(fù)、導(dǎo)入內(nèi)容不固定等情景,碰到這些問(wèn)題情景,我們應(yīng)該如何處理呢?本篇文章里,作者就表格導(dǎo)入功能可能遇到的問(wèn)題情景、解決方案等方面進(jìn)行了總結(jié),一起來(lái)看一下。
產(chǎn)品功能設(shè)計(jì)是最近自己比較想聊的一個(gè)話題,主要看到身邊很多人在設(shè)計(jì)功能的時(shí)候還是停留在樣式交互,底層的邏輯和功能本身的適配方案反而不受關(guān)注。
所以,之后我會(huì)把日常過(guò)程中接觸到比較有代表性的功能拿出來(lái)好好總結(jié)一下分享給大家,希望能給大家?guī)?lái)一點(diǎn)啟發(fā)。
接下來(lái),看正文!
一、重復(fù)數(shù)據(jù)處理
導(dǎo)入過(guò)程中,我們最常見的異常流程就是重復(fù)數(shù)據(jù)如何處理的情況。在設(shè)計(jì)這種異常流程時(shí),我們首先要明確重復(fù)數(shù)據(jù)的概念。
一般我們定義重復(fù)數(shù)據(jù)時(shí),定義的是導(dǎo)入的數(shù)據(jù)源中存在重復(fù)數(shù)據(jù),也就是你的導(dǎo)入表格中存在重復(fù)數(shù)據(jù)。同時(shí)這里的重復(fù)數(shù)據(jù)應(yīng)該指的是表頭的number ID的重復(fù),如下圖:
針對(duì)number ID與內(nèi)容一一對(duì)應(yīng)的情況,為了能夠確保導(dǎo)入數(shù)據(jù)的準(zhǔn)確性,一般會(huì)設(shè)計(jì)三種邏輯。
第一種:以最先導(dǎo)入的數(shù)據(jù)為準(zhǔn);第二種,以最后導(dǎo)入的數(shù)據(jù)為準(zhǔn);第三種,存在重復(fù)數(shù)據(jù)時(shí)不執(zhí)行。單看這三種方式,一般會(huì)選取第二、三種,第一種對(duì)于開發(fā)來(lái)說(shuō)不太友好。大家可以基于實(shí)際場(chǎng)景去考量。
這種導(dǎo)入的結(jié)果會(huì)存在新增和覆蓋兩種,新增對(duì)應(yīng)數(shù)據(jù)庫(kù)沒(méi)有該number ID產(chǎn)生新的number ID數(shù)據(jù),覆蓋對(duì)應(yīng)數(shù)據(jù)庫(kù)中已有number ID且數(shù)據(jù)內(nèi)容不一致則進(jìn)行覆蓋。
如果說(shuō)你導(dǎo)入的表格,number ID與內(nèi)容存在一對(duì)多或多對(duì)多的關(guān)系,就不用考慮重復(fù)數(shù)據(jù),導(dǎo)入結(jié)果只會(huì)有新增。Number ID和內(nèi)容完全一樣的數(shù)據(jù),對(duì)于實(shí)現(xiàn)結(jié)果來(lái)說(shuō)是不需要考慮的。
二、一對(duì)多關(guān)系導(dǎo)入
對(duì)于常規(guī)的導(dǎo)入一般都是一對(duì)一的關(guān)系,這種場(chǎng)景基本比較好理解,模版上基本也沒(méi)有過(guò)多的設(shè)計(jì)。
但當(dāng)我們導(dǎo)入的內(nèi)容,number ID與內(nèi)容存在一對(duì)多的關(guān)系,這個(gè)時(shí)候我們對(duì)于模版的設(shè)計(jì)會(huì)大大影響使用者的效率,具體怎么設(shè)計(jì)還是需要考慮實(shí)際場(chǎng)景。
第一種:內(nèi)容包含元素較多時(shí),運(yùn)用平鋪的方式設(shè)計(jì)模版,如圖:
第二種:同樣的內(nèi)容,在同一單元格內(nèi)分隔符的方式區(qū)分,如圖:
這兩種方式的本質(zhì)其實(shí)都是一樣的,將復(fù)雜數(shù)據(jù)結(jié)構(gòu)化存儲(chǔ)。這樣的數(shù)據(jù)導(dǎo)入大多數(shù)情況一般都用于數(shù)據(jù)初始化,在這里其實(shí)我們要順便提一句表格導(dǎo)入情況下的配套功能。
其實(shí)看了上述兩種導(dǎo)入,你會(huì)很自然地發(fā)現(xiàn)導(dǎo)入只能做到數(shù)據(jù)新增,為什么呢?
如果我們以表格內(nèi)容數(shù)據(jù)做到替換,那么每一次用戶在導(dǎo)入的時(shí)候,他其實(shí)都要拿到全量數(shù)據(jù)才能維護(hù),這對(duì)于用戶日常使用顯然是很不合理的。所以,后續(xù)我們針對(duì)所有參數(shù)會(huì)在系統(tǒng)本身考慮增加刪除的功能,而不會(huì)考慮對(duì)表格內(nèi)容本身做替換。
三、導(dǎo)入內(nèi)容表頭不固定
最后一種導(dǎo)入在常規(guī)的場(chǎng)景中也會(huì)遇到,主要是用于導(dǎo)入內(nèi)容不固定的情況。如下圖這種:
對(duì)于這種表格,我們一般會(huì)比較靈活地去考慮功能設(shè)計(jì)。如果考慮是一對(duì)一的情況,number ID存在多條,參數(shù)內(nèi)容沒(méi)有重復(fù)的情況,將其定義為新增。如下圖:
一旦有重復(fù)參數(shù),我們都將其默認(rèn)為重復(fù)數(shù)據(jù),執(zhí)行我們之前的三種邏輯。
整體來(lái)說(shuō),上訴的表格內(nèi)容導(dǎo)入一般能解決大多數(shù)的場(chǎng)景需求。這次的表格導(dǎo)入功能也分享到這里了。感謝大家的閱讀!
作者:紅塵;公眾號(hào):都市擺渡人
本文由 @都市擺渡人 原創(chuàng)發(fā)布于人人都是產(chǎn)品經(jīng)理,未經(jīng)作者許可,禁止轉(zhuǎn)載。
題圖來(lái)自Unsplash,基于CC0協(xié)議。
- 目前還沒(méi)評(píng)論,等你發(fā)揮!