SlideShare a Scribd company logo
1 of 20
Download to read offline
Introduction to Padrino
   Toronto Ruby Brigade


    http://www.padrinorb.com/
What is Padrino?

        A Framework built on top of Sinatra




              ...a 'micro-framework'

          ● good for small web application
          ● small footprint
          ● easy to learn and use
What is Padrino?

● A quote from the Padrino mailing list:
   ○ The Padrino framework appreciates and believes in the
     philosophy of Sinatra [in] keeping things simple, elegant,
     and 'closer to the metal' while still allowing you to
     express yourself in a ruby-esque manner. However at
     times it's nice to have some more additional functionalit
     [y] (like helpers, mailers, even caching) that Rails
     does [have]; and it's nice to have those features without
     leveraging their full opinionated stack.
       ■ Arthur Chiu
How is it different than Sinatra?

Adds generators for building projects:
 ● Can be 'tiny'
    ○ padrino g project my_project --tiny
 ● Can be 'Rails like'
    ○ padrino g project my_big_project -d activerecord -s prototype
      -e erb -a sqlite -t rspec -m mocha
padrino g project my_project --tiny
padrino g project my_big_project -d activerecord -s prototype -e erb -a sqlite -t rspec -m mocha
How is it different than Sinatra?

Helpers and functionality familiar to Rails developers:
 ● Tag helpers (tag, content_tag, input_tag, form_tag, link_to, image_tag)
 ● Mailer functionality (similar to ActiveMailer)
 ● Admin Interface (inspired by Django)
 ● Reloading (automatically reloads server, previously you had to use
    something like 'shotgun' to have this behaviour with Sinatra -- never a
    problem with Rails)
 ● Localization support
 ● [complete list: http://www.padrinorb.com/]
How is it different than Rails?

Has a flexible project generator:
 ● padrino g project test_app -d datamapper -b
 ● padrino g project test_app -d mongoid -t rspec -e haml -m rr -s
   jquery -b
 ● padrino g project test_app --test none --renderer none
 ● Plugin Generator
     ○ ...
 ● [more details: http://www.padrinorb.com/guides/generators]
How is it different than Rails?

Mounting sub-applications:
 ● Extend application functionality by building 'apps'
    ○ Build apps within an app
       ■ Padrino.mount("blog").to("/blog")
       ■ Padrino.mount("website").to("/website")
       ■ Padrino.mount("app").to("/")
Advanced mounting:
  ● Padrino.mount("Blog").to("/").host("blog.example.org")
  ● Padrino.mount("Admin").host("admin.example.org")
  ● Padrino.mount("WebSite").host(/.*.?example.org/)
  ● Padrino.mount("Foo").to("/foo").host("bar.example.org"

[more details: http://www.padrinorb.com/guides/mounting-applications]
padrino g app my_sub_app
How is it different than Rails?

Has automatic administration interface generator --
inspired by Django:
  ● padrino g admin
     ○ generate admin application to be mounted inside main
       application
  ● padrino rake ar:migrate
     ○ for admin tables
  ● padrino rake seed
     ○ create first admin account wizard
  ● padrino generate admin_page model_name
     ○ adding a page to manage a new model
  ● [more details: http://www.padrinorb.com/guides/basic-projects#generating-the-admin-section]
padrino g admin
1) Run 'padrino rake ar:migrate'
2) Run 'padrino rake seed'
3) Visit the admin panel in the browser at '/admin'
Administration login page
User editing form
Why would someone choose to
develop with Padrino VS Rails?
From beginner...
 ● Sinatra is much easier to learn conceptually and in practice.
Why would someone choose to
develop with Padrino VS Rails?
... to advanced.
   ● Once applications reach a certain size [...], Sinatra begins to
     break down without some imposed structure, feature
     extensions and a framework to bring things together.
       ○ Nathan Esquenazi
Why would someone choose to
develop with Padrino VS Rails?
Other reasons why you might want to take a look at
Padrino:
 ● Benchmarks performance of Padrino vs Rails (memory footprint, speed)
 ● The ability to easily 'scale' up a Sinatra based app with more features
   and functionalities with Padrino modules & embedded apps (app within an
   app)
 ● In Rails, Sinatra is already used sometimes as a platform for building
   'plugins' and extending Rails functionality
 ● Agnostic generators that generate a variety of components for your
   project (orm's, js, renderers, tests, etc...)
 ● Admin interface application that can be generated into your existing
   padrino application ("... not just the scaffold, but the whole house" -- to
   paraphrase Django)
Why would someone choose to
develop with Padrino VS Rails?
Selling Padrino:
 ● My motivation? I like to touch all pieces of my stack on my
   own, so I use a framework where I can easily look 'under
   the hood'.
     ○ Florian Gilcher
@victorbstan


  With help from the Padrino community
                     &
Special thanks to the Toronto Ruby Brigade

More Related Content

Similar to Introduction to padrino

Web Development in Django
Web Development in DjangoWeb Development in Django
Web Development in DjangoLakshman Prasad
 
The Kitchen Cloud How To: Automating Joyent SmartMachines with Chef
The Kitchen Cloud How To: Automating Joyent SmartMachines with ChefThe Kitchen Cloud How To: Automating Joyent SmartMachines with Chef
The Kitchen Cloud How To: Automating Joyent SmartMachines with ChefChef Software, Inc.
 
Padrino is agnostic
Padrino is agnosticPadrino is agnostic
Padrino is agnosticTakeshi Yabe
 
Move out from AppEngine, and Python PaaS alternatives
Move out from AppEngine, and Python PaaS alternativesMove out from AppEngine, and Python PaaS alternatives
Move out from AppEngine, and Python PaaS alternativestzang ms
 
Scalable Django Architecture
Scalable Django ArchitectureScalable Django Architecture
Scalable Django ArchitectureRami Sayar
 
You Can Work on the Web Patform! (GOSIM 2023)
You Can Work on the Web Patform! (GOSIM 2023)You Can Work on the Web Patform! (GOSIM 2023)
You Can Work on the Web Patform! (GOSIM 2023)Igalia
 
PyconIE 2016 - Kajiki, the fast and validated template engine your were looki...
PyconIE 2016 - Kajiki, the fast and validated template engine your were looki...PyconIE 2016 - Kajiki, the fast and validated template engine your were looki...
PyconIE 2016 - Kajiki, the fast and validated template engine your were looki...Alessandro Molina
 
Web applications support on AGL
Web applications support on AGLWeb applications support on AGL
Web applications support on AGLIgalia
 
DevOpsDays Taipei 2019 - Mastering IaC the DevOps Way
DevOpsDays Taipei 2019 - Mastering IaC the DevOps WayDevOpsDays Taipei 2019 - Mastering IaC the DevOps Way
DevOpsDays Taipei 2019 - Mastering IaC the DevOps Waysmalltown
 
Let's build Developer Portal with Backstage
Let's build Developer Portal with BackstageLet's build Developer Portal with Backstage
Let's build Developer Portal with BackstageOpsta
 
A intro to (hosted) Shiny Apps
A intro to (hosted) Shiny AppsA intro to (hosted) Shiny Apps
A intro to (hosted) Shiny AppsDaniel Koller
 
Scala services in action
Scala services in actionScala services in action
Scala services in actionUnderscore
 
Implementing a Symfony Based CMS in a Publishing Company
Implementing a Symfony Based CMS in a Publishing CompanyImplementing a Symfony Based CMS in a Publishing Company
Implementing a Symfony Based CMS in a Publishing CompanyMarcos Labad
 
PHP Aberdeen Quick optimisation of PHP with Webgrind
PHP Aberdeen Quick optimisation of PHP with WebgrindPHP Aberdeen Quick optimisation of PHP with Webgrind
PHP Aberdeen Quick optimisation of PHP with WebgrindAndy_Gaskell
 

Similar to Introduction to padrino (20)

django
djangodjango
django
 
Introduce Django
Introduce DjangoIntroduce Django
Introduce Django
 
Radiant CMS - smart simplicity
Radiant CMS - smart simplicityRadiant CMS - smart simplicity
Radiant CMS - smart simplicity
 
Web Development in Django
Web Development in DjangoWeb Development in Django
Web Development in Django
 
Forensic Theming - DrupalCon London
Forensic Theming - DrupalCon LondonForensic Theming - DrupalCon London
Forensic Theming - DrupalCon London
 
Free django
Free djangoFree django
Free django
 
Dust.js
Dust.jsDust.js
Dust.js
 
The Kitchen Cloud How To: Automating Joyent SmartMachines with Chef
The Kitchen Cloud How To: Automating Joyent SmartMachines with ChefThe Kitchen Cloud How To: Automating Joyent SmartMachines with Chef
The Kitchen Cloud How To: Automating Joyent SmartMachines with Chef
 
Padrino is agnostic
Padrino is agnosticPadrino is agnostic
Padrino is agnostic
 
Move out from AppEngine, and Python PaaS alternatives
Move out from AppEngine, and Python PaaS alternativesMove out from AppEngine, and Python PaaS alternatives
Move out from AppEngine, and Python PaaS alternatives
 
Scalable Django Architecture
Scalable Django ArchitectureScalable Django Architecture
Scalable Django Architecture
 
You Can Work on the Web Patform! (GOSIM 2023)
You Can Work on the Web Patform! (GOSIM 2023)You Can Work on the Web Patform! (GOSIM 2023)
You Can Work on the Web Patform! (GOSIM 2023)
 
PyconIE 2016 - Kajiki, the fast and validated template engine your were looki...
PyconIE 2016 - Kajiki, the fast and validated template engine your were looki...PyconIE 2016 - Kajiki, the fast and validated template engine your were looki...
PyconIE 2016 - Kajiki, the fast and validated template engine your were looki...
 
Web applications support on AGL
Web applications support on AGLWeb applications support on AGL
Web applications support on AGL
 
DevOpsDays Taipei 2019 - Mastering IaC the DevOps Way
DevOpsDays Taipei 2019 - Mastering IaC the DevOps WayDevOpsDays Taipei 2019 - Mastering IaC the DevOps Way
DevOpsDays Taipei 2019 - Mastering IaC the DevOps Way
 
Let's build Developer Portal with Backstage
Let's build Developer Portal with BackstageLet's build Developer Portal with Backstage
Let's build Developer Portal with Backstage
 
A intro to (hosted) Shiny Apps
A intro to (hosted) Shiny AppsA intro to (hosted) Shiny Apps
A intro to (hosted) Shiny Apps
 
Scala services in action
Scala services in actionScala services in action
Scala services in action
 
Implementing a Symfony Based CMS in a Publishing Company
Implementing a Symfony Based CMS in a Publishing CompanyImplementing a Symfony Based CMS in a Publishing Company
Implementing a Symfony Based CMS in a Publishing Company
 
PHP Aberdeen Quick optimisation of PHP with Webgrind
PHP Aberdeen Quick optimisation of PHP with WebgrindPHP Aberdeen Quick optimisation of PHP with Webgrind
PHP Aberdeen Quick optimisation of PHP with Webgrind
 

Recently uploaded

ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityWSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Jeffrey Haguewood
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Zilliz
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024The Digital Insurer
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelDeepika Singh
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Orbitshub
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Bhuvaneswari Subramani
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 

Recently uploaded (20)

ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
Navigating the Deluge_ Dubai Floods and the Resilience of Dubai International...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 

Introduction to padrino

  • 1. Introduction to Padrino Toronto Ruby Brigade http://www.padrinorb.com/
  • 2. What is Padrino? A Framework built on top of Sinatra ...a 'micro-framework' ● good for small web application ● small footprint ● easy to learn and use
  • 3. What is Padrino? ● A quote from the Padrino mailing list: ○ The Padrino framework appreciates and believes in the philosophy of Sinatra [in] keeping things simple, elegant, and 'closer to the metal' while still allowing you to express yourself in a ruby-esque manner. However at times it's nice to have some more additional functionalit [y] (like helpers, mailers, even caching) that Rails does [have]; and it's nice to have those features without leveraging their full opinionated stack. ■ Arthur Chiu
  • 4. How is it different than Sinatra? Adds generators for building projects: ● Can be 'tiny' ○ padrino g project my_project --tiny ● Can be 'Rails like' ○ padrino g project my_big_project -d activerecord -s prototype -e erb -a sqlite -t rspec -m mocha
  • 5. padrino g project my_project --tiny
  • 6. padrino g project my_big_project -d activerecord -s prototype -e erb -a sqlite -t rspec -m mocha
  • 7. How is it different than Sinatra? Helpers and functionality familiar to Rails developers: ● Tag helpers (tag, content_tag, input_tag, form_tag, link_to, image_tag) ● Mailer functionality (similar to ActiveMailer) ● Admin Interface (inspired by Django) ● Reloading (automatically reloads server, previously you had to use something like 'shotgun' to have this behaviour with Sinatra -- never a problem with Rails) ● Localization support ● [complete list: http://www.padrinorb.com/]
  • 8. How is it different than Rails? Has a flexible project generator: ● padrino g project test_app -d datamapper -b ● padrino g project test_app -d mongoid -t rspec -e haml -m rr -s jquery -b ● padrino g project test_app --test none --renderer none ● Plugin Generator ○ ... ● [more details: http://www.padrinorb.com/guides/generators]
  • 9. How is it different than Rails? Mounting sub-applications: ● Extend application functionality by building 'apps' ○ Build apps within an app ■ Padrino.mount("blog").to("/blog") ■ Padrino.mount("website").to("/website") ■ Padrino.mount("app").to("/") Advanced mounting: ● Padrino.mount("Blog").to("/").host("blog.example.org") ● Padrino.mount("Admin").host("admin.example.org") ● Padrino.mount("WebSite").host(/.*.?example.org/) ● Padrino.mount("Foo").to("/foo").host("bar.example.org" [more details: http://www.padrinorb.com/guides/mounting-applications]
  • 10. padrino g app my_sub_app
  • 11. How is it different than Rails? Has automatic administration interface generator -- inspired by Django: ● padrino g admin ○ generate admin application to be mounted inside main application ● padrino rake ar:migrate ○ for admin tables ● padrino rake seed ○ create first admin account wizard ● padrino generate admin_page model_name ○ adding a page to manage a new model ● [more details: http://www.padrinorb.com/guides/basic-projects#generating-the-admin-section]
  • 13. 1) Run 'padrino rake ar:migrate' 2) Run 'padrino rake seed' 3) Visit the admin panel in the browser at '/admin'
  • 16. Why would someone choose to develop with Padrino VS Rails? From beginner... ● Sinatra is much easier to learn conceptually and in practice.
  • 17. Why would someone choose to develop with Padrino VS Rails? ... to advanced. ● Once applications reach a certain size [...], Sinatra begins to break down without some imposed structure, feature extensions and a framework to bring things together. ○ Nathan Esquenazi
  • 18. Why would someone choose to develop with Padrino VS Rails? Other reasons why you might want to take a look at Padrino: ● Benchmarks performance of Padrino vs Rails (memory footprint, speed) ● The ability to easily 'scale' up a Sinatra based app with more features and functionalities with Padrino modules & embedded apps (app within an app) ● In Rails, Sinatra is already used sometimes as a platform for building 'plugins' and extending Rails functionality ● Agnostic generators that generate a variety of components for your project (orm's, js, renderers, tests, etc...) ● Admin interface application that can be generated into your existing padrino application ("... not just the scaffold, but the whole house" -- to paraphrase Django)
  • 19. Why would someone choose to develop with Padrino VS Rails? Selling Padrino: ● My motivation? I like to touch all pieces of my stack on my own, so I use a framework where I can easily look 'under the hood'. ○ Florian Gilcher
  • 20. @victorbstan With help from the Padrino community & Special thanks to the Toronto Ruby Brigade