Top Banner
AngularJS meets Rails elena torró
22
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: AngularJS meets Rails

AngularJS meets Railselena torró

Page 2: AngularJS meets Rails

About me

➔ Elena Torró➔ elenatorro.com➔ github.com/elenatorro➔ twitter.com/@Elenarcolepsia

Page 3: AngularJS meets Rails

Overview

● Rails Basic Project● Assets Pipeline● Adding AngularJS

Page 4: AngularJS meets Rails

● Ruby● MVC● ORM

Ruby on Rails

Page 5: AngularJS meets Rails

Rails Project

Page 6: AngularJS meets Rails

Rails Project

Page 7: AngularJS meets Rails

Assets Pipeline

Page 8: AngularJS meets Rails

Assets Pipeline

rake

Page 9: AngularJS meets Rails

Assets Pipeline

Development● local server● !precompilation

Production● precompile:

bundle exec rake assets:precompile

Page 10: AngularJS meets Rails

Assets Pipeline

Rakefile

config/application.rb

Page 11: AngularJS meets Rails

Assets Pipeline

rake assets:precompile

rake assets:cleanrake assets:clobber

Page 12: AngularJS meets Rails

Assets PipelineIncluding assets:1. Reference link:

a. <%= javascript_include_tag params[:controller] %>b. <%= stylesheet_link_tag params[:controller] %>

2. Precompile:

3. application.js, application.css.scss → require

app/assets/javascripts/this.jslib/assets/javascripts/is.jsvendor/assets/javascripts/an.jsvendor/assets/somepackage/example.js

//= require this//= require is//= require an//= require somepackage/example

Page 13: AngularJS meets Rails

Adding AngularJS

● NPM● Bower● Gems:

○ gem 'bower-rails'○ gem 'angular-rails-templates'

Page 14: AngularJS meets Rails

Adding AngularJS - Advices

● Official and tested gems● Use rake● Use the tools you feel more comfortable with

Page 15: AngularJS meets Rails

Adding AngularJS - Bower

1. $ npm install --save bower2. gem ‘bower-rails’3. $ bundle install4. Bowerfile (not bower.json)

→ add the bower dependencies you’ll need5. $ rake bower:install6. Add paths

asset 'angular'asset 'angular-route'asset 'angular-resource'asset 'bootstrap-sass-official'

Page 16: AngularJS meets Rails

Adding AngularJS - include dependencies

Page 17: AngularJS meets Rails

routes.rb

application.js→ routes, templates, controllers

Adding AngularJS - create angular application

beers_controller→ API

main_controller→ main view (index.html)

quizz_controller→ /quizz route

MainController→ list beers

QuizzController→ three beers quizz

template: list.html

template: quizz.html

Page 18: AngularJS meets Rails

Adding AngularJS

Page 19: AngularJS meets Rails

Adding AngularJS

Page 20: AngularJS meets Rails

Adding AngularJS

Page 21: AngularJS meets Rails

Bootstrap Layout