成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

Meteor的集合:Collections的使用

changfeng1050 / 2626人閱讀

摘要:是什么是存儲數(shù)據(jù)的方式,數(shù)據(jù)庫使用的是。使用實現(xiàn)每一個對應(yīng)中的一個表。的的特點在客戶端和服務(wù)端使用相同的數(shù)據(jù)模型,一次定義之后兩端使用,會完成剩下的數(shù)據(jù)同步的工作。

Collections是什么

Collections是Meteor存儲數(shù)據(jù)的方式,數(shù)據(jù)庫使用的是MongoDB。
Collections允許訪問客戶端和服務(wù)端,會自動更新,當(dāng)Collections發(fā)生改變的時候,所有使用Collections的組件都會被更新。使用Collections不需要編寫大量的服務(wù)器代碼就可以方便的更新頁面邏輯。
客戶端調(diào)用Collections和服務(wù)器調(diào)用Collections基本一致。
Collections使用MongoDB實現(xiàn),每一個Collections對應(yīng)MongoDB中的一個表。

創(chuàng)建一個Collections

創(chuàng)建Collections很簡單,直接new一個Colletcion即可:

Languages=new Mongo.Collection("languages");

這樣就可以使用find()查詢數(shù)據(jù)了,使用Collections查詢數(shù)據(jù)的客戶端代碼:

    if (Meteor.isClient) {
      Template.meteor_collection.helpers({
        languages:Languages.find()
      });
    }

在模板中顯示查詢到的數(shù)據(jù):

    

因為還沒有插入數(shù)據(jù),所以這個使用頁面中并沒有數(shù)據(jù)可以顯示,下面插入一些數(shù)據(jù)。

使用MongoDB插入數(shù)據(jù)

進入項目目錄中,確保你的MongoDB服務(wù)在運行中,如果沒有運行,可以啟動Mongo服務(wù),也可以啟動項目,啟動項目時會自動啟動MongoDB服務(wù)。
然后運行命令:

meteor mongo

    ongoDB shell version: 2.6.7
    connecting to: 127.0.0.1:3001/meteor
    meteor:PRIMARY>

show tables;

并沒有看到數(shù)據(jù)顯示,下面插入一條數(shù)據(jù):

db.languages.insert({name:"nodejs",created_time:new Date()})

再來看下:

show tables;

    languages
    system.indexes

多了兩個表 一個是languages一個是索引表。
在頁面里面就可以看到一條數(shù)據(jù)。

在server端添加數(shù)據(jù)

上面的查詢是在客戶端使用Collections,下面演示下在服務(wù)器端使用Collections的方法,在Meteor啟動的時候判斷如果數(shù)據(jù)小于2條就新加一條數(shù)據(jù)。

    if (Meteor.isServer) {
      Meteor.startup(function () {
        if(Languages.find().count()==1){
            Languages.insert({name:"css",created_time:new Date()});
        }
      });
    }

這樣就在服務(wù)器端添加了一條數(shù)據(jù),直接就可以在客戶端查看到數(shù)據(jù)變化。
MeteorCollections的特點:在客戶端和服務(wù)端使用相同的數(shù)據(jù)模型,一次定義之后兩端使用,Meteor會完成剩下的數(shù)據(jù)同步的工作。

項目地址:https://github.com/jjz/meteor...

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/18776.html

相關(guān)文章

  • (翻譯)Mantra官方文檔

    摘要:我們通過對我們應(yīng)用程序的每個部分進行單元測試來實現(xiàn)這一點,同時遵循一個標準。它幫助你單元測試,動作和集成容器。當(dāng)在組件庫中使用庫函數(shù)時,它應(yīng)該是純函數(shù)。 Mantra 工作草案-版本0.2.0 簡介 這是一個Mantra草案規(guī)范,一個由Kadira創(chuàng)建的Meteor的應(yīng)用程序架構(gòu)。 它幫助開發(fā)人員構(gòu)建可維護的,面向未來的Meteor應(yīng)用程序。 版權(quán) The MIT License (M...

    denson 評論0 收藏0
  • Day 15:Meteor —— 從零開始創(chuàng)建一個 Web 應(yīng)用

    摘要:在我的機子上,運行于端口,以避免和其他默認運行于端口的沖突。我們可以使用命令連接數(shù)據(jù)庫查看定義應(yīng)用層次創(chuàng)建的模板應(yīng)用有一個問題,客戶端和服務(wù)器段的代碼是一樣的。在中加入然后添加問題模板注意我們使用了來確保用戶未登錄的情況下應(yīng)用。 編者注:我們發(fā)現(xiàn)了有趣的一系列文章《30天學(xué)習(xí)30種新技術(shù)》,正在翻譯中,一天一篇更新,年終禮包。下面是第15天的內(nèi)容。 到目前為止我們討論了Bower...

    Big_fat_cat 評論0 收藏0
  • Day 15:Meteor —— 從零開始創(chuàng)建一個 Web 應(yīng)用

    摘要:在我的機子上,運行于端口,以避免和其他默認運行于端口的沖突。我們可以使用命令連接數(shù)據(jù)庫查看定義應(yīng)用層次創(chuàng)建的模板應(yīng)用有一個問題,客戶端和服務(wù)器段的代碼是一樣的。在中加入然后添加問題模板注意我們使用了來確保用戶未登錄的情況下應(yīng)用。 編者注:我們發(fā)現(xiàn)了有趣的一系列文章《30天學(xué)習(xí)30種新技術(shù)》,正在翻譯中,一天一篇更新,年終禮包。下面是第15天的內(nèi)容。 到目前為止我們討論了Bower...

    lpjustdoit 評論0 收藏0
  • Meteor臨時存儲:Session

    摘要:在開發(fā)的過程中有的時候我們只需要存儲一些臨時的變量,我們并不想使用來存儲,這個時候我們可以使用來存儲,可以方便的存儲一些狀態(tài),也可以在中使用。中存儲的的值項目地址 在開發(fā)的過程中有的時候我們只需要存儲一些臨時的變量,我們并不想使用collection來存儲,這個時候我們可以使用Session來存儲,Session可以方便的存儲一些狀態(tài),也可以在helpers中使用。 Session是變...

    Meils 評論0 收藏0
  • 翻譯 Meteor React 制作 Todos - 03 - 集合

    摘要:數(shù)據(jù)存儲集合是存儲持久化數(shù)據(jù)的方式。中的集合比較特殊的是,它可以從服務(wù)端,包括客戶端接收數(shù)據(jù)。它也可以自動的自我更新,因此一個視圖組件受到一個集合的支持,他可以自動的展示最新的數(shù)據(jù)。 數(shù)據(jù)存儲 集合(Collection)是Meteor存儲持久化數(shù)據(jù)的方式。Meteor 中的集合比較特殊的是,它可以從服務(wù)端,包括客戶端接收數(shù)據(jù)。這使得編寫視圖邏輯變得更加簡單 -- 不用去寫太多的服務(wù)端...

    Scott 評論0 收藏0

發(fā)表評論

0條評論

最新活動
閱讀需要支付1元查看
<