###Generators EmberJS, like Ruby on Rails contains many tools to help build great web applications in a relatively small amount of time. Ember accomplishes this in much the same way Ruby on Rails does, through generators.
If you’re familiar with Ruby on Rails, then you know that you can create models, migrations, and other Rails objects with a simple command in the terminal like
rails generate model Product or
rails g migration AddPartId. In this blog post we’ll learn about these same generators in an Ember context.
###Generating Ember “Blueprints”
In Ember we call these generatable objects “blueprints”. There are many such blueprints that you can generate, but we’ll focus on just three: routes, models, and templates. To see all the “blueprints” you can generate in Ember, type
ember generate --help or
ember g -help.
g is an abbreviation for
###Generating Ember Routes
Generating a route creates 3 files and make changes to the router. Let’s look at an example. Typing
ember g route hamburger will create a
tests/unit/routes/hamburger-test.js. You’ll see a short summary displayed in the terminal following the command you typed. In short, a generated route will include the route itself, a template, a test, and the route will be registered in the router.
####A Route An empty route will look like this:
####A Template An empty template will look like this:
###Generating Ember Models
Generating a model by typing
ember g model name will create two files: a model and a test.
####A Model A basic model might look like this:
###Generating Ember Controllers
ember g controller name will generate two files: a controller and a test. The controller file while empty isn’t much to look at, but it can contain things like possible states, computed properties, and actions.
####A Controller Here’s an empty controller, the space between the brackets could contain functionality such as the examples mentioned above.