SlideShare uma empresa Scribd logo
1 de 15
Rails Concepts
A Shivasubramanian
Gemfile & Gemfile.lock
 config.frameworks
 ActionPack
 ActiveRecord
 ActiveModel
 ActionMailer
 ActiveResource
 ActiveSupport
 Railties
Rails frameworks
 config.frameworks
 ActionPack
 ActiveRecord
 ActiveModel
 ActionMailer
 ActiveResource
 ActiveSupport
 Railties
Rails frameworks
 ActionPack
 Handles web requests & responses
 The C & V part of MVC
 Two modules
 ActionDispatch
 Parses information about & from the
request
 Decides which controller should execute
the request
 ActionController
 ActionController::Base
 Create filters
 Automatically call views for rendering
Rails frameworks
 ActiveRecord
 ORM for Rails
 M in MVC
 Create “Models” (ActiveRecord::Base)
 “Callback lifecycle”
 Provides callbacks for various “events”
Rails frameworks
 ActiveModel
 Similar to ActiveRecord, but without a backing
table
 Various modules
 Brings various features present in ActiveModel to
plain classes
Rails frameworks
 ActionMailer
 Handles email sending & receiving
 ActionMailer::Base
 Enables mail content to be treated similar to
views
 Can trigger other actions based on incoming mail
Rails frameworks
 ActiveResource
 ORM mapping for REST endpoints
 Represents REST endpoints as Rails classes
 ActiveResource::Base
 Internally generates a REST XML request &
converts the response into a Ruby object.
Rails frameworks
 ActiveSupport
 Utility classes
 Ruby extensions
Rails frameworks
 Railties
 Glues all frameworks together
 Handles bootstrapping for a Rails app
 Rails::Railtie
 Provides hooks to modify the initialization
process.
Rails frameworks over the years
Rails 3.x
 ActionPack
 ActiveRecord
 ActiveModel
 ActionMailer
 ActiveResource
 ActiveSupport
 Railties
Rails 2.x
 ActionPack
 ActiveRecord
 ActionMailer
 ActionWebService
 ActiveResource
 ActiveSupport
 Railties
Rails 1.x
 ActionPack
 ActiveRecord
 ActionMailer
 ActionWebService
 ActiveSupport
 Railties
Can I write my own framework?
 Yes, you can.
 But it must be a Rails::Railtie
 Every component in Rails is a Rails::Railtie
Rails Engines
 Shareable Rails applications
 Share them as a library!
 Rails::Engine
 Rails::Engine < Rails::Railtie

Gems, plugins, engines
 Railties
 Engines
 Application
Middleware
 Railties
 Engines
 Application

Mais conteúdo relacionado

Mais procurados

Ruby on Rails 3
Ruby on Rails 3Ruby on Rails 3
Ruby on Rails 3hotrannam
 
Services Factory Provider Value Constant - AngularJS
Services Factory Provider Value Constant - AngularJSServices Factory Provider Value Constant - AngularJS
Services Factory Provider Value Constant - AngularJSSumanth krishna
 
Kube London May 2018
Kube London May 2018Kube London May 2018
Kube London May 2018Justin Davies
 
Introduction to Elastic Beanstalk
Introduction to Elastic BeanstalkIntroduction to Elastic Beanstalk
Introduction to Elastic BeanstalkWolfgang Schell
 
Introduction to react
Introduction to reactIntroduction to react
Introduction to reactkiranabburi
 
React.js - The Dawn of Virtual DOM
React.js - The Dawn of Virtual DOMReact.js - The Dawn of Virtual DOM
React.js - The Dawn of Virtual DOMJimit Shah
 
03 spring cloud eureka service discovery
03 spring cloud eureka   service discovery03 spring cloud eureka   service discovery
03 spring cloud eureka service discoveryJanani Velmurugan
 
(DEV304) What’s New in the AWS SDK for .NET | AWS re:Invent 2014
(DEV304) What’s New in the AWS SDK for .NET | AWS re:Invent 2014(DEV304) What’s New in the AWS SDK for .NET | AWS re:Invent 2014
(DEV304) What’s New in the AWS SDK for .NET | AWS re:Invent 2014Amazon Web Services
 
ASP.NET Page Life Cycle
ASP.NET Page Life CycleASP.NET Page Life Cycle
ASP.NET Page Life CycleAbhishek Sur
 
Enterprise Java Microservices : creating and managing large-scale Java applic...
Enterprise Java Microservices : creating and managing large-scale Java applic...Enterprise Java Microservices : creating and managing large-scale Java applic...
Enterprise Java Microservices : creating and managing large-scale Java applic...Manning Publications
 
Express apps on AWS Lambda
Express apps on AWS LambdaExpress apps on AWS Lambda
Express apps on AWS LambdaMarian Rusnak
 
Durable Functions vs Logic App : la guerra dei workflow!!
Durable Functions vs Logic App : la guerra dei workflow!!Durable Functions vs Logic App : la guerra dei workflow!!
Durable Functions vs Logic App : la guerra dei workflow!!Massimo Bonanni
 
SquiDB: a SQLite layer for Android - Jonathan Koren, Yahoo!
SquiDB: a SQLite layer for Android - Jonathan Koren, Yahoo!SquiDB: a SQLite layer for Android - Jonathan Koren, Yahoo!
SquiDB: a SQLite layer for Android - Jonathan Koren, Yahoo!DroidConTLV
 

Mais procurados (20)

Ruby on Rails 3
Ruby on Rails 3Ruby on Rails 3
Ruby on Rails 3
 
Services Factory Provider Value Constant - AngularJS
Services Factory Provider Value Constant - AngularJSServices Factory Provider Value Constant - AngularJS
Services Factory Provider Value Constant - AngularJS
 
Kube London May 2018
Kube London May 2018Kube London May 2018
Kube London May 2018
 
Introduction to Elastic Beanstalk
Introduction to Elastic BeanstalkIntroduction to Elastic Beanstalk
Introduction to Elastic Beanstalk
 
Api RESTFull
Api RESTFullApi RESTFull
Api RESTFull
 
Web api
Web apiWeb api
Web api
 
Introduction to react
Introduction to reactIntroduction to react
Introduction to react
 
React.js - The Dawn of Virtual DOM
React.js - The Dawn of Virtual DOMReact.js - The Dawn of Virtual DOM
React.js - The Dawn of Virtual DOM
 
03 spring cloud eureka service discovery
03 spring cloud eureka   service discovery03 spring cloud eureka   service discovery
03 spring cloud eureka service discovery
 
React JS .NET
React JS .NETReact JS .NET
React JS .NET
 
Intro to React
Intro to ReactIntro to React
Intro to React
 
(DEV304) What’s New in the AWS SDK for .NET | AWS re:Invent 2014
(DEV304) What’s New in the AWS SDK for .NET | AWS re:Invent 2014(DEV304) What’s New in the AWS SDK for .NET | AWS re:Invent 2014
(DEV304) What’s New in the AWS SDK for .NET | AWS re:Invent 2014
 
ASP.NET Page Life Cycle
ASP.NET Page Life CycleASP.NET Page Life Cycle
ASP.NET Page Life Cycle
 
Enterprise Java Microservices : creating and managing large-scale Java applic...
Enterprise Java Microservices : creating and managing large-scale Java applic...Enterprise Java Microservices : creating and managing large-scale Java applic...
Enterprise Java Microservices : creating and managing large-scale Java applic...
 
Vue.js basics
Vue.js basicsVue.js basics
Vue.js basics
 
Express apps on AWS Lambda
Express apps on AWS LambdaExpress apps on AWS Lambda
Express apps on AWS Lambda
 
Durable Functions vs Logic App : la guerra dei workflow!!
Durable Functions vs Logic App : la guerra dei workflow!!Durable Functions vs Logic App : la guerra dei workflow!!
Durable Functions vs Logic App : la guerra dei workflow!!
 
SquiDB: a SQLite layer for Android - Jonathan Koren, Yahoo!
SquiDB: a SQLite layer for Android - Jonathan Koren, Yahoo!SquiDB: a SQLite layer for Android - Jonathan Koren, Yahoo!
SquiDB: a SQLite layer for Android - Jonathan Koren, Yahoo!
 
React.js
React.jsReact.js
React.js
 
reactJS
reactJSreactJS
reactJS
 

Destaque

Олександр Фільц. «Філософія етичного прагматизму сьогодні та на перспективу»
Олександр Фільц. «Філософія етичного прагматизму сьогодні та на перспективу»Олександр Фільц. «Філософія етичного прагматизму сьогодні та на перспективу»
Олександр Фільц. «Філософія етичного прагматизму сьогодні та на перспективу»Дмитрий Лубкин
 
Como reduzir custos com etiquetas adesivas
Como reduzir custos com etiquetas adesivasComo reduzir custos com etiquetas adesivas
Como reduzir custos com etiquetas adesivasGomaq
 
Андрій Длігач. «Ціннісно-інноваційна модель "економіки" Нового світу»
Андрій Длігач. «Ціннісно-інноваційна модель "економіки" Нового світу»Андрій Длігач. «Ціннісно-інноваційна модель "економіки" Нового світу»
Андрій Длігач. «Ціннісно-інноваційна модель "економіки" Нового світу»Дмитрий Лубкин
 
Birmingham Mail Original Copy
Birmingham Mail Original CopyBirmingham Mail Original Copy
Birmingham Mail Original CopyRobMilne
 
Brcc student services training
Brcc student services trainingBrcc student services training
Brcc student services trainingandrewcathlin04
 
Gomaq - Outsourcing de Impressão
Gomaq - Outsourcing de ImpressãoGomaq - Outsourcing de Impressão
Gomaq - Outsourcing de ImpressãoGomaq
 
Vendendo outsourcing de impressão - Thiarlei Macedo - Impressão Gerenciada
Vendendo outsourcing de impressão - Thiarlei Macedo - Impressão GerenciadaVendendo outsourcing de impressão - Thiarlei Macedo - Impressão Gerenciada
Vendendo outsourcing de impressão - Thiarlei Macedo - Impressão GerenciadaThiarlei Macedo
 
[Công nghệ may] quản lý kaizen và công cụ 5 s
[Công nghệ may] quản lý kaizen và công cụ 5 s[Công nghệ may] quản lý kaizen và công cụ 5 s
[Công nghệ may] quản lý kaizen và công cụ 5 sTÀI LIỆU NGÀNH MAY
 
Python: Object-oriented Testing
Python: Object-oriented TestingPython: Object-oriented Testing
Python: Object-oriented TestingDamian T. Gordon
 
Bibliotek 2.0 - Muligheder og udfordringer
Bibliotek 2.0 - Muligheder og udfordringerBibliotek 2.0 - Muligheder og udfordringer
Bibliotek 2.0 - Muligheder og udfordringerEsben Fjord
 
Introducing TensorFlow: The game changer in building "intelligent" applications
Introducing TensorFlow: The game changer in building "intelligent" applicationsIntroducing TensorFlow: The game changer in building "intelligent" applications
Introducing TensorFlow: The game changer in building "intelligent" applicationsRokesh Jankie
 

Destaque (16)

Олександр Фільц. «Філософія етичного прагматизму сьогодні та на перспективу»
Олександр Фільц. «Філософія етичного прагматизму сьогодні та на перспективу»Олександр Фільц. «Філософія етичного прагматизму сьогодні та на перспективу»
Олександр Фільц. «Філософія етичного прагматизму сьогодні та на перспективу»
 
Como reduzir custos com etiquetas adesivas
Como reduzir custos com etiquetas adesivasComo reduzir custos com etiquetas adesivas
Como reduzir custos com etiquetas adesivas
 
Андрій Длігач. «Ціннісно-інноваційна модель "економіки" Нового світу»
Андрій Длігач. «Ціннісно-інноваційна модель "економіки" Нового світу»Андрій Длігач. «Ціннісно-інноваційна модель "економіки" Нового світу»
Андрій Длігач. «Ціннісно-інноваційна модель "економіки" Нового світу»
 
Lefkas presentation
Lefkas presentationLefkas presentation
Lefkas presentation
 
Birmingham Mail Original Copy
Birmingham Mail Original CopyBirmingham Mail Original Copy
Birmingham Mail Original Copy
 
Cartoon*
Cartoon*Cartoon*
Cartoon*
 
Cyril Castelnaud: "La génération internet est-elle soluble dans l'entreprise ...
Cyril Castelnaud: "La génération internet est-elle soluble dans l'entreprise ...Cyril Castelnaud: "La génération internet est-elle soluble dans l'entreprise ...
Cyril Castelnaud: "La génération internet est-elle soluble dans l'entreprise ...
 
GRAMMER
GRAMMERGRAMMER
GRAMMER
 
17 Клосс
17 Клосс 17 Клосс
17 Клосс
 
Brcc student services training
Brcc student services trainingBrcc student services training
Brcc student services training
 
Gomaq - Outsourcing de Impressão
Gomaq - Outsourcing de ImpressãoGomaq - Outsourcing de Impressão
Gomaq - Outsourcing de Impressão
 
Vendendo outsourcing de impressão - Thiarlei Macedo - Impressão Gerenciada
Vendendo outsourcing de impressão - Thiarlei Macedo - Impressão GerenciadaVendendo outsourcing de impressão - Thiarlei Macedo - Impressão Gerenciada
Vendendo outsourcing de impressão - Thiarlei Macedo - Impressão Gerenciada
 
[Công nghệ may] quản lý kaizen và công cụ 5 s
[Công nghệ may] quản lý kaizen và công cụ 5 s[Công nghệ may] quản lý kaizen và công cụ 5 s
[Công nghệ may] quản lý kaizen và công cụ 5 s
 
Python: Object-oriented Testing
Python: Object-oriented TestingPython: Object-oriented Testing
Python: Object-oriented Testing
 
Bibliotek 2.0 - Muligheder og udfordringer
Bibliotek 2.0 - Muligheder og udfordringerBibliotek 2.0 - Muligheder og udfordringer
Bibliotek 2.0 - Muligheder og udfordringer
 
Introducing TensorFlow: The game changer in building "intelligent" applications
Introducing TensorFlow: The game changer in building "intelligent" applicationsIntroducing TensorFlow: The game changer in building "intelligent" applications
Introducing TensorFlow: The game changer in building "intelligent" applications
 

Semelhante a Rails concepts

Beginners' guide to Ruby on Rails
Beginners' guide to Ruby on RailsBeginners' guide to Ruby on Rails
Beginners' guide to Ruby on RailsVictor Porof
 
Server-side Web development via Ruby on Rails
Server-side Web development via Ruby on RailsServer-side Web development via Ruby on Rails
Server-side Web development via Ruby on Railsg3ppy
 
Spring MVC introduction HVA
Spring MVC introduction HVASpring MVC introduction HVA
Spring MVC introduction HVAPeter Maas
 
Backbone introdunction
Backbone introdunctionBackbone introdunction
Backbone introdunctionmzxbupt
 
ASP.NET - Building Web Application..in the right way!
ASP.NET - Building Web Application..in the right way!ASP.NET - Building Web Application..in the right way!
ASP.NET - Building Web Application..in the right way!Fioriela Bego
 
ASP.NET - Building Web Application..in the right way!
ASP.NET - Building Web Application..in the right way!ASP.NET - Building Web Application..in the right way!
ASP.NET - Building Web Application..in the right way!Commit Software Sh.p.k.
 
SharePoint Client Object Model (CSOM)
SharePoint Client Object Model (CSOM)SharePoint Client Object Model (CSOM)
SharePoint Client Object Model (CSOM)Kashif Imran
 
4 - Silverlight y SharePoint, por Rodrigo Diaz y Mauricio Angulo
4 - Silverlight y SharePoint, por Rodrigo Diaz y Mauricio Angulo4 - Silverlight y SharePoint, por Rodrigo Diaz y Mauricio Angulo
4 - Silverlight y SharePoint, por Rodrigo Diaz y Mauricio AnguloLuis Du Solier
 
ruby on rails development company in india
ruby on rails development company in indiaruby on rails development company in india
ruby on rails development company in indiaSAG IPL
 
Raybiztech Guide To Backbone Javascript Library
Raybiztech Guide To Backbone Javascript LibraryRaybiztech Guide To Backbone Javascript Library
Raybiztech Guide To Backbone Javascript Libraryray biztech
 
Developing SOAP Web Services using Java
Developing SOAP Web Services using JavaDeveloping SOAP Web Services using Java
Developing SOAP Web Services using Javakrishnaviswambharan
 
ASP.NET MVC as the next step in web development
ASP.NET MVC as the next step in web developmentASP.NET MVC as the next step in web development
ASP.NET MVC as the next step in web developmentVolodymyr Voytyshyn
 
Extending Oracle E-Business Suite with Ruby on Rails
Extending Oracle E-Business Suite with Ruby on RailsExtending Oracle E-Business Suite with Ruby on Rails
Extending Oracle E-Business Suite with Ruby on RailsRaimonds Simanovskis
 

Semelhante a Rails concepts (20)

Jinal desai .net
Jinal desai .netJinal desai .net
Jinal desai .net
 
Beginners' guide to Ruby on Rails
Beginners' guide to Ruby on RailsBeginners' guide to Ruby on Rails
Beginners' guide to Ruby on Rails
 
Server-side Web development via Ruby on Rails
Server-side Web development via Ruby on RailsServer-side Web development via Ruby on Rails
Server-side Web development via Ruby on Rails
 
Spring MVC introduction HVA
Spring MVC introduction HVASpring MVC introduction HVA
Spring MVC introduction HVA
 
Backbone introdunction
Backbone introdunctionBackbone introdunction
Backbone introdunction
 
Spring mvc 2.0
Spring mvc 2.0Spring mvc 2.0
Spring mvc 2.0
 
MVC 6 Introduction
MVC 6 IntroductionMVC 6 Introduction
MVC 6 Introduction
 
ASP.NET - Building Web Application..in the right way!
ASP.NET - Building Web Application..in the right way!ASP.NET - Building Web Application..in the right way!
ASP.NET - Building Web Application..in the right way!
 
ASP.NET - Building Web Application..in the right way!
ASP.NET - Building Web Application..in the right way!ASP.NET - Building Web Application..in the right way!
ASP.NET - Building Web Application..in the right way!
 
Mvc3 crash
Mvc3 crashMvc3 crash
Mvc3 crash
 
SharePoint Client Object Model (CSOM)
SharePoint Client Object Model (CSOM)SharePoint Client Object Model (CSOM)
SharePoint Client Object Model (CSOM)
 
BackboneJS + ReactJS
BackboneJS + ReactJSBackboneJS + ReactJS
BackboneJS + ReactJS
 
4 - Silverlight y SharePoint, por Rodrigo Diaz y Mauricio Angulo
4 - Silverlight y SharePoint, por Rodrigo Diaz y Mauricio Angulo4 - Silverlight y SharePoint, por Rodrigo Diaz y Mauricio Angulo
4 - Silverlight y SharePoint, por Rodrigo Diaz y Mauricio Angulo
 
Liferay (DXP) 7 Tech Meetup for Developers
Liferay (DXP) 7 Tech Meetup for DevelopersLiferay (DXP) 7 Tech Meetup for Developers
Liferay (DXP) 7 Tech Meetup for Developers
 
Asp.net mvc
Asp.net mvcAsp.net mvc
Asp.net mvc
 
ruby on rails development company in india
ruby on rails development company in indiaruby on rails development company in india
ruby on rails development company in india
 
Raybiztech Guide To Backbone Javascript Library
Raybiztech Guide To Backbone Javascript LibraryRaybiztech Guide To Backbone Javascript Library
Raybiztech Guide To Backbone Javascript Library
 
Developing SOAP Web Services using Java
Developing SOAP Web Services using JavaDeveloping SOAP Web Services using Java
Developing SOAP Web Services using Java
 
ASP.NET MVC as the next step in web development
ASP.NET MVC as the next step in web developmentASP.NET MVC as the next step in web development
ASP.NET MVC as the next step in web development
 
Extending Oracle E-Business Suite with Ruby on Rails
Extending Oracle E-Business Suite with Ruby on RailsExtending Oracle E-Business Suite with Ruby on Rails
Extending Oracle E-Business Suite with Ruby on Rails
 

Último

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilV3cube
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 

Último (20)

A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Developing An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of BrazilDeveloping An App To Navigate The Roads of Brazil
Developing An App To Navigate The Roads of Brazil
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

Rails concepts

  • 2. Gemfile & Gemfile.lock  config.frameworks  ActionPack  ActiveRecord  ActiveModel  ActionMailer  ActiveResource  ActiveSupport  Railties
  • 3. Rails frameworks  config.frameworks  ActionPack  ActiveRecord  ActiveModel  ActionMailer  ActiveResource  ActiveSupport  Railties
  • 4. Rails frameworks  ActionPack  Handles web requests & responses  The C & V part of MVC  Two modules  ActionDispatch  Parses information about & from the request  Decides which controller should execute the request  ActionController  ActionController::Base  Create filters  Automatically call views for rendering
  • 5. Rails frameworks  ActiveRecord  ORM for Rails  M in MVC  Create “Models” (ActiveRecord::Base)  “Callback lifecycle”  Provides callbacks for various “events”
  • 6. Rails frameworks  ActiveModel  Similar to ActiveRecord, but without a backing table  Various modules  Brings various features present in ActiveModel to plain classes
  • 7. Rails frameworks  ActionMailer  Handles email sending & receiving  ActionMailer::Base  Enables mail content to be treated similar to views  Can trigger other actions based on incoming mail
  • 8. Rails frameworks  ActiveResource  ORM mapping for REST endpoints  Represents REST endpoints as Rails classes  ActiveResource::Base  Internally generates a REST XML request & converts the response into a Ruby object.
  • 9. Rails frameworks  ActiveSupport  Utility classes  Ruby extensions
  • 10. Rails frameworks  Railties  Glues all frameworks together  Handles bootstrapping for a Rails app  Rails::Railtie  Provides hooks to modify the initialization process.
  • 11. Rails frameworks over the years Rails 3.x  ActionPack  ActiveRecord  ActiveModel  ActionMailer  ActiveResource  ActiveSupport  Railties Rails 2.x  ActionPack  ActiveRecord  ActionMailer  ActionWebService  ActiveResource  ActiveSupport  Railties Rails 1.x  ActionPack  ActiveRecord  ActionMailer  ActionWebService  ActiveSupport  Railties
  • 12. Can I write my own framework?  Yes, you can.  But it must be a Rails::Railtie  Every component in Rails is a Rails::Railtie
  • 13. Rails Engines  Shareable Rails applications  Share them as a library!  Rails::Engine  Rails::Engine < Rails::Railtie 
  • 14. Gems, plugins, engines  Railties  Engines  Application