You already know how to build a basic web application with the Ruby on Rails framework. Perhaps, you have even taken Course 1, "Ruby on Rails: An Introduction" (we highly recommend it) where you relied on external web services to be your “data layer”. But in the back of your mind, you always knew that there would come a time when you would need to roll up your sleeves and learn SQL to be able to interact with your own relational database (RDBMS). But there is an easier way to get started with SQL using the Active Record Object/Relational (ORM) framework. In this course, we will be able to use the Ruby language and the Active Record ORM framework to automate interactions with the database to quickly build the application we want.
In Rails with Active Record and Action Pack, we will explore how to interact with relational databases by using Active Record, a Ruby gem, which Rails uses by default for database access. We will then take a look at what role Active Record plays in the overall request-response cycle, when a client (the browser) requests data from the server, as well as how to submit the data to the server. Of course, when accessing data, security is of paramount importance! We will talk about vulnerabilities such as SQL injection, as well as how to secure access to data by authenticating and authorizing users accessing the data. Take this course to build a Ruby on Rails application with Active Record to automate the detailed SQL interactions with our database.
Introduction to Active Record
In this module, we will begin exploring the database-interaction portion of Rails. We will start off with migrations that enable you to create and modify the schema of the database. We will then move on to discussing the Active Record gem Rails uses, which enables you to create, retrieve, update, and delete the data from the database. Before looking at Active Record, we will talk about some advanced Ruby features of meta-programming that will help facilitate our Active Record journey.
Deep Dive into Active Record
In this module, we will continue exploring Active Record and look at ways to code advanced queries without exposing ourselves to risk from SQL injection (as well as what SQL injection actually is). We will then look at expressing relationships between entities in Active Record and validating the data being saved to the database.
Introduction to Action Pack
In this module, we will introduce Rails' Action Pack, which is a combination of Action Controller and Action View. We will see how REST has influenced routing in a Rails application and also talk about partials, form helpers, and layouts.
Security and Nested Resources in Action Pack
In this module, we will talk about how to deal with nested resources in Rails. We will then talk about securing your app with a username and password combination for authentication purposes and making sure that users are only authorized to make changes to and view their own resources. We will finish off the module by discussing pagination and deploying to Heroku Paas (Platform as a Service).
Start your review of Rails with Active Record and Action Pack
Derek Humlicek completed this course, spending 8 hours a week on it and found the course difficulty to be medium.
This course is much better than the previous course "Ruby on Rails: An Introduction". If you struggled through the first class, this one is much more user friendly and easy to go along with.This is definitely a Rails course, with the first course being...
This course is much better than the previous course "Ruby on Rails: An Introduction". If you struggled through the first class, this one is much more user friendly and easy to go along with.This is definitely a Rails course, with the first course being a Ruby course.
The professor's audio issues are much less pronounced in this course and less noticeable. The lectures are not as monotone and boring to listen to as well.
The modules are broken down into better sections that flow together. The materials, though older, can still be followed and course materials can be used. There has been at least some updates for newer versions of Ruby, Rails, and gems.
The assignments go with the course lectures and many of the examples can point you in the right direction. The assignments are not direct copies of the lectures with many items needing to be modified to accommodate the for the assignment requirements. Each module is a take/variation of the previous assignment, which is nice because you get a better sense of how they are working together. The RSPEC files are much better at actually pointing you towards what your issues are. The Wiki site has more beneficial Q/A.
With the assignment time estimates, I found that I usually had to double the higher estimates for the amount that I would spend on each one.
One of the problems with this course is that the assignment files seem to be written by multiple people. They can be very confusing at times, hard to follow. Because the assignments are written in this way, some things will break but are fixed in later steps, though you will not know that they are fixed later after you spend time trying to fix the issues so RSPEC or the Web test will pass.
Another problem with the course has to do with Rails in general. It has some weird conventions and tries to be "Too helpful" at times. You will still have to use Google to figure out what the correct convention is and maybe why some things are done.