Day3-接着敲代碼
對藍天的嚮往
全國各地都開始加入防疫戰線了,春節老老實實在家待着吧,喫好睡好,然後可以開始準備遠程工作了。
今天我抽了點時間繼續研究keystoneJS,發現 Virtual這個fields,它可以幹啥呢?
顧名思義,它是用來虛擬某字段的。此字段不會存儲在數據庫裏。
示例代碼:
//可以通過resolver來組合其他字段的數據,形成virtual的字段數據。
keystone.createList('Example', {
fields: {
firstName: { type: Text },
lastName: { type: Text },
name: {
type: Virtual,
resolver: item => (`${item.firstName} ${item.lastName}`)
};
},
},
});
//除此之外,還可以請求api,來達到其他數據處理的目的。
keystone.createList('Example', {
fields: {
movies: {
type: Virtual,
extendGraphQLTypes: [`type Movie { title: String, rating: Int }`],
graphQLReturnType: `[Movie]`,
graphQLReturnFragment: `{
title
rating
}`,
resolver: async () => {
const response = await fetch('http://example.com/api/movies/');
const data = await response.json();
return data.map(({ title, rating }) => ({ title, rating }));
},
},
},
});
關鍵是可以在字段裏發起請求,利用此特性,我新增了個List:
- API 開放API的管理
利用virtual裏發起請求,可以知道api目前的運行情況(是否正常),實時獲取api的結果。
跟Knowledge類似,我們可以給API打上各種tags。
- DAY02 不一樣的春節
今天大街上人流、車流明顯更少,過江隧道開始封閉,周邊城市也陸續封城。 上海也對進入人員進行追蹤、隔離。
同樣是宅在家裏,哪裏都沒去,除了喫、玩之外,我今天決定開始工作。
- keystoneJS v5
調研了一下cms的開源解決方案,cms:內容管理系統,提供一個易於使用的adminUI(管理界面),對內容進行增刪改查。
除了UI之外,提供了api、有的還提供了更爲好用的graphQL查詢方式。
部分框架提供app的UI,部分沒提供。最後選定了keystoneJS, 體驗了下,文檔齊全,示例清晰,便於快速入門掌握。
嘗試建立了一個小項目除了內容管理系統外,我會陸續集成darksee.ai的功能。
按照文檔指引,我設置了3種List,分別是Knowledge、Tag、User。
- Knowledge用來存儲內容
- Tag表達知識點的關係
- User控制用戶權限
keystoneJS把graphQL的工具也提供了,非常方便,我趁此快速入門了graphQL。
- 總體架構
這個小項目打算作爲mixlab無界社區的一款知識內容智能產品。
- 知識圖譜
爲了更好地呈現知識之間的關係,圖譜是必備的技術,但由於是人工智能垂直領域的,所以暫時不需要圖數據庫,只需要一些圖算法即可。
- 內容搜索引擎
爲了滿足源源不斷的知識內容、降低人力,需要接入搜索引擎來獲取每天的新內容。
- 提取知識
需要一個算法可以提取內容裏的知識,並更新到圖譜裏。
一步步來,此產品第一個版本就只有知識內容,數據呈現沒有好看的UI,只有json。有開源打算,召集設計師、程序員一起玩~感興趣的社區小夥伴,可私信跟我說~
- DAY01 初遇
來武漢之前,官方的消息稱只有十幾例確診,而且連續好幾天沒有新增消息。來了之後,情況就不一樣了…
人生第一次遭遇封城,接下來幾天做點記錄。
武漢封城第一天,天氣不好,下着小雨,街上沒什麼人和車。
快手捐了1億給武漢,網易嚴選的口罩很便宜,百度上了個發熱門診地圖,丁香醫生上了個疫情追蹤。
有人用所謂大數據分析了下武漢人口流動,其實不用分析,武漢是全國的交通大樞紐,輻射全國各地。看到幾則消息,大致意思是本地的醫院不收,只能飛往老家求醫,醫療資源肯定急缺,人口本來就不少。
前幾天本地的一個社區還舉辦萬人聚會,還有今天還辦了一個春節聯歡,都不知道這些人是怎麼想的?
除了刷各種手機信息之外,今天的日常主要是休息、看電視、喫零食、陪娃玩耍。