Difference between revisions of "WebFund 2013W: MongoDB"

From Soma-notes
Jump to navigation Jump to search
Line 2: Line 2:


'''Note:''' MongoDB ''has its own JavaScript interpreter''.  Thus, in a web application using Node and MongoDB you'll have three JavaScript interpreters: the one in the browser, the one in Node, and the one in MongoDB.  Same language, but access to different resources/objects in each.
'''Note:''' MongoDB ''has its own JavaScript interpreter''.  Thus, in a web application using Node and MongoDB you'll have three JavaScript interpreters: the one in the browser, the one in Node, and the one in MongoDB.  Same language, but access to different resources/objects in each.
You should try to get through all of this tutorial, up to the "Learning More" part.  In particular, your aim should be to learn enough about MongoDB so you can understand how our blog example works well enough so you can add extra functionality.


===Interactive Tutorial===
===Interactive Tutorial===
Line 18: Line 20:


Do the [http://docs.mongodb.org/manual/tutorial/getting-started/ regular getting started] tutorial in your now up-and-running MongoDB installation.
Do the [http://docs.mongodb.org/manual/tutorial/getting-started/ regular getting started] tutorial in your now up-and-running MongoDB installation.
To keep going, try out [http://docs.mongodb.org/manual/tutorial/ other tutorials]!  But, these are probably more than you need until you have your basic application working.


===Node and MongoDB===
===Node and MongoDB===
Line 25: Line 25:
Recall that we covered a Node app that used MongoDB in the [[WebFund_2013W:_Task_2|simple blog tutorial]].  A slightly revised version of the code (more in keeping with current versions of Node) is available [http://homeostasis.scs.carleton.ca/~soma/webfund-2013w/blog-updated.zip here].
Recall that we covered a Node app that used MongoDB in the [[WebFund_2013W:_Task_2|simple blog tutorial]].  A slightly revised version of the code (more in keeping with current versions of Node) is available [http://homeostasis.scs.carleton.ca/~soma/webfund-2013w/blog-updated.zip here].


Can you now get comments working in the blog example?  What did you need to change?
Can you now get comments working in the blog example?  What did you need to change? Note that most of the database access code needed is already in the program.
 
For an extra challenge, add tags to posts.
 
===Learning more===
 
To learn more about MongoDB, try out [http://docs.mongodb.org/manual/tutorial/ other tutorials].


To learn more about how Node and MongoDB interact, see the [http://mongodb.github.com/node-mongodb-native/ documentation of the MongoDB driver for Node].
To learn more about how Node and MongoDB interact, see the [http://mongodb.github.com/node-mongodb-native/ documentation of the MongoDB driver for Node].


If you want to interact with MongoDB at a higher level in Node, [http://mongoosejs.com/index.html mongoose] may be of interest.
If you want to interact with MongoDB at a higher level in Node, [http://mongoosejs.com/index.html mongoose] may be of interest.

Revision as of 15:15, 1 March 2013

In this tutorial you will start playing with MongoDB.

Note: MongoDB has its own JavaScript interpreter. Thus, in a web application using Node and MongoDB you'll have three JavaScript interpreters: the one in the browser, the one in Node, and the one in MongoDB. Same language, but access to different resources/objects in each.

You should try to get through all of this tutorial, up to the "Learning More" part. In particular, your aim should be to learn enough about MongoDB so you can understand how our blog example works well enough so you can add extra functionality.

Interactive Tutorial

First, for a gentle introduction, try this interactive MongoDB tutorial. It is very simple but will get you familiar with the basics.

Get MongoDB running

To get MongoDB running in Ubuntu, just run apt-get install mongodb.

On Windows, follow the instructions here. (Note: you can't get it to run as a service in the lab.)

For every other operating system, refer to the MongoDB Getting Started guides.

More MongoDB tutorials

Do the regular getting started tutorial in your now up-and-running MongoDB installation.

Node and MongoDB

Recall that we covered a Node app that used MongoDB in the simple blog tutorial. A slightly revised version of the code (more in keeping with current versions of Node) is available here.

Can you now get comments working in the blog example? What did you need to change? Note that most of the database access code needed is already in the program.

For an extra challenge, add tags to posts.

Learning more

To learn more about MongoDB, try out other tutorials.

To learn more about how Node and MongoDB interact, see the documentation of the MongoDB driver for Node.

If you want to interact with MongoDB at a higher level in Node, mongoose may be of interest.