Workbook
XML and Web Services >> Workbook
Ruby install on a USB stick
- Download the One-click ruby installer from rubyforge http://rubyforge.org/frs/?group_id=167 (warning this is a big file!). The one I used was ruby186-25.exe but there may be a later version available. To be able to run the whole environment from a USB stick I’d really recommend you have about 500MB free (maybe it’s time to buy a new stick?)
- Double-click on the installer, after clicking next a few times, a screen like the one shown below is displayed.
- Ensure you install on your USB stick, not the C drive (check the drive letter, as shown. Mine is J:, yours may vary)
- Once Ruby is installed, open a cmd prompt (enter cmd into the ‘run’ box from the start menu) change to your ruby directory (e.g. j:\ruby ) and enter the follow command:
- gem install rails -y
- You may need to add the ruby directory to your system path, the setenv.bat file discussed in class will do this – the command is:
- set path=%PATH%;j:\ruby\bin;
- Remember to change the drive letter (j: in the example above) to match the letter assigned to your USB stick. This will probably be different for each system – it’s a windows foible – what a wonderful system (maybe you should try Linux? – ok Rant over.) This is why we suggested in the lecture that you put the command above in its own file, which we called setenv.bat, so that it’s easy to change.
- The gem command should install rails, see below for a database.
Exercises
Create one (or more) programs using ruby that can perform the following tasks:
- Create a program that can take a phrase as input and print it out in reverse.
- Create a program that can take a phrase as input and output it’s length as a number
- Create an application that can encrypt any phrase you enter using the rot13 algorithm
- Create an application that can take a temperature in F or C and convert to the other form
SQLite install on Windows
- Download the sqlite package from http://sqlite.org/download.html (you will need a file called sqlitedll-3_x_y.zip where x and y are numbers (they change, unfortunately). For reference I used sqlitedll-3_3_17.zip when I downloaded it. The download page is shown below:
- When you have downloaded the file, unzip it and extract it to a directory called sqlite on your usb stick (you may need to create this directory first.) You should then copy the sqlite3.dll file to your ruby\bin directory.
- Next use the gem command again to install the ruby-sqlite bindings so that ruby can use sqlite. The command is given below:
- gem install sqlite3-ruby (choose option 2 from the menu)
- Rails apps should be stored in their own directory – I tend to call it railsapps. Create this directory on your usb stick
- To test that rails is working properly type the following commands:
- cd railsapps
rails mytest --database=sqlite3 cd mytest ruby script/server
- Now start IE (ugh!?!?) or Firefox (yep!) and enter localhost:3000 into the URL bar, you should see the screen below:
MVC & Controllers
1. Using the instructions given above, create a new application called myapp, connected to a sqlite database, and cd into the directory. 2. Create a controller using ruby script/generate controller Say 3. cd into the app\controllers directory and open the say_controller.rb skeleton. 4. Add the hello class as shown below: 5. Create a new view template in the app\views\say directory, called hello.rhtml 6. Code is given below: 7. Test the above, what do you see? 8. Add a goodbye method to the say controller using the instructions above. 9. Create a goodbye view to accompany the goodbye method, but change the message to “see you later” 10. Modify the hello view to have a link to the goodbye view, example below 11. What does the h helper do? 12. Create a link from goodbye back to hello 13. Investigate the formatting options/helpers available to make the time display more manageable.