SlideShare una empresa de Scribd logo
1 de 29
Descargar para leer sin conexión
RailsAdmin
                             The right way of doing data administration




                                       RubyAndRails 2010
                                           Bogdan Gaza


RubyAndRails 2010                                                         @hurrycane
Thursday, October 21, 2010
$	
  whoami
                  Student at Faculty of Computer Science, Iasi, Romania

                                Freelance web developer


                                 RubySOC 2010 student


                                bogdan.gaza@info.uaic.ro


                                 @hurrycane

RubyAndRails 2010                                                         @hurrycane
Thursday, October 21, 2010
Data administration is ________*
                                          SPEAK UP!




  * talking in the context of a web app
RubyAndRails 2010                                @hurrycane
Thursday, October 21, 2010
...	
  the	
  way	
  you	
  organize	
  and	
  control	
  your	
  data

RubyAndRails 2010                                                                           @hurrycane
Thursday, October 21, 2010
Data administration means the admin panel.

RubyAndRails 2010                                               @hurrycane
Thursday, October 21, 2010
HOW?
                             Both	
  simple,	
  secure	
  and	
  fast




RubyAndRails 2010                                                       @hurrycane
Thursday, October 21, 2010
Most people write custom
                          admin panels.

                               prone	
  to	
  errors
                             definitely	
  NOT	
  fast
                              not	
  very	
  simple

RubyAndRails 2010                                       @hurrycane
Thursday, October 21, 2010
Other use CMSs

                                  usually	
  secure
                                       NOT	
  fast
                               simple	
  but	
  not	
  flexible


RubyAndRails 2010                                                @hurrycane
Thursday, October 21, 2010
The Rails way of doing it
                using a plugin engine.
                             usually	
  secure
                                   fast
                                 simple

RubyAndRails 2010                                @hurrycane
Thursday, October 21, 2010
And the choices are:



RubyAndRails 2010                                   @hurrycane
Thursday, October 21, 2010
lipsiaAdmin




                             ExtJS | permissions | Rails 2.x
                                      www.lipsiadmin.com


RubyAndRails 2010                                              @hurrycane
Thursday, October 21, 2010
ActiveScaffold




                 Embed-able | Third-Party-Plugins | Rails 2.x
                               http://www.activescaffold.com/


RubyAndRails 2010                                               @hurrycane
Thursday, October 21, 2010
Hobo




                        WebAppBuilder | Permissions | Rails 3.x
                                      http://hobocentral.net/


RubyAndRails 2010                                                 @hurrycane
Thursday, October 21, 2010
Introducing

                                 RailsAdmin

                             http://github.com/sferik/rails_admin/


RubyAndRails 2010                                                    @hurrycane
Thursday, October 21, 2010
RubySOC	
  2010	
  Project
                                     mentors
                               Erik Michaels-Ober,
                                   Yehuda Katz,
                             Rodrigo Rosenfeld Rosas,
                             Luke van der Hoeven and
                                  Rein Henrichs.

RubyAndRails 2010                                       @hurrycane
Thursday, October 21, 2010
Began	
  as	
  Erik’s	
  MerbAdmin	
  
                    and	
  then	
  got	
  ported	
  to	
  
                                  Rails	
  3



RubyAndRails 2010                                        @hurrycane
Thursday, October 21, 2010
RailsAdmin	
  is	
  a	
  Rails	
  Engine

RubyAndRails 2010                                                       @hurrycane
Thursday, October 21, 2010
Basic Engines
                                 controllers



    require 'rails_admin/abstract_model'

    module RailsAdmin
      class ApplicationController < ::ApplicationController

      end
    end




RubyAndRails 2010                                       @hurrycane
Thursday, October 21, 2010
Basic Engines
                                  models




     module RailsAdmin
       class History < ActiveRecord::Base

       end
     end




RubyAndRails 2010                            @hurrycane
Thursday, October 21, 2010
Basic Engines
                                        routes



                  Rails.application.routes.draw do

                      # Routes for rails_admin controller
                      controller "main" do
                        match "/", :to => :index, :as => "dashboard"
                        match "/:model_name", :to => :list, :as => "list"
                        ...
                      end
                  end




      For more info checkout the mountable apps RubySOC project.

RubyAndRails 2010                                                           @hurrycane
Thursday, October 21, 2010
RailsAdmin



                                                 }
                             C   Create new
                             R   Show
                             U   Easily Update
                                                     Your	
  Data
                             D   Safely Delete

                                 Automatic form validation
                             Authentication (using Devise)

                                   Multi-column-search
                             Use Action History (per row)

RubyAndRails 2010                                                   @hurrycane
Thursday, October 21, 2010
RailsAdmin	
  -­‐	
  simple	
  to	
  install

  Add in your Gemfile
 gem 'devise' # Devise must be required before RailsAdmin
 gem 'rails_admin', :git => 'git://github.com/sferik/rails_admin.git'


  Run
  $ bundle update


  Also run:
  $ rails generate rails_admin:install_admin




RubyAndRails 2010                                                           @hurrycane
Thursday, October 21, 2010
With	
  Rails	
  3.1	
  Rails	
  Admin	
  will	
  be	
  
            mountable.	
  (Thanks	
  to	
  Piotr!)




RubyAndRails 2010                                               @hurrycane
Thursday, October 21, 2010
Rails.application.routes.draw do
    mount Admin::Engine => "/admin"
  end




RubyAndRails 2010               @hurrycane
Thursday, October 21, 2010
DEMO


RubyAndRails 2010                   @hurrycane
Thursday, October 21, 2010
Rails	
  3.1	
  and	
  RailsAdmin	
  1.0	
  around	
  the
                                       end	
  of	
  the	
  year.




RubyAndRails 2010                                                               @hurrycane
Thursday, October 21, 2010
e?        Do
                                      vi s       hav es it
                                    De              e au      nee
                               hy                        the
                                                             ntic
                                                                   d to
                             W

                                          QA
                                                                  atio
                                                                      n?


                             Con
                                 figur                          ns
                                        atio             i ssio
                                            n?     Perm



RubyAndRails 2010                                                          @hurrycane
Thursday, October 21, 2010
Configuration DSL
                                   experimental


                             Thanks to kappa (Petteri Kääpä)!

                                    http://gist.github.com/638153



RubyAndRails 2010                                                   @hurrycane
Thursday, October 21, 2010
Thanks!



RubyAndRails 2010                      @hurrycane
Thursday, October 21, 2010

Más contenido relacionado

La actualidad más candente

SharePoint Saturday Lisbon 2017 - SharePoint Framework, Angular & Azure Funct...
SharePoint Saturday Lisbon 2017 - SharePoint Framework, Angular & Azure Funct...SharePoint Saturday Lisbon 2017 - SharePoint Framework, Angular & Azure Funct...
SharePoint Saturday Lisbon 2017 - SharePoint Framework, Angular & Azure Funct...
Sébastien Levert
 
SPA, Scalable Application & AngularJS
SPA, Scalable Application & AngularJSSPA, Scalable Application & AngularJS
SPA, Scalable Application & AngularJS
Mitch Chen
 
European Collaboration Summit - SharePoint Framework Angular & Azure Functions
European Collaboration Summit - SharePoint Framework Angular & Azure FunctionsEuropean Collaboration Summit - SharePoint Framework Angular & Azure Functions
European Collaboration Summit - SharePoint Framework Angular & Azure Functions
Sébastien Levert
 
Sizzle jQCon San Francisco 2012
Sizzle jQCon San Francisco 2012Sizzle jQCon San Francisco 2012
Sizzle jQCon San Francisco 2012
livelogos
 

La actualidad más candente (20)

SharePoint Saturday Lisbon 2017 - SharePoint Framework, Angular & Azure Funct...
SharePoint Saturday Lisbon 2017 - SharePoint Framework, Angular & Azure Funct...SharePoint Saturday Lisbon 2017 - SharePoint Framework, Angular & Azure Funct...
SharePoint Saturday Lisbon 2017 - SharePoint Framework, Angular & Azure Funct...
 
Ruby w/o Rails (Олександр Сімонов)
Ruby w/o Rails (Олександр Сімонов)Ruby w/o Rails (Олександр Сімонов)
Ruby w/o Rails (Олександр Сімонов)
 
Building modular applications with the Java Platform Module System and Layrry
Building modular applications with the Java Platform Module System and LayrryBuilding modular applications with the Java Platform Module System and Layrry
Building modular applications with the Java Platform Module System and Layrry
 
C# Async/Await Explained
C# Async/Await ExplainedC# Async/Await Explained
C# Async/Await Explained
 
Stencil the time for vanilla web components has arrived
Stencil the time for vanilla web components has arrivedStencil the time for vanilla web components has arrived
Stencil the time for vanilla web components has arrived
 
Gemboys
GemboysGemboys
Gemboys
 
Ruby and Rails by Example (GeekCamp edition)
Ruby and Rails by Example (GeekCamp edition)Ruby and Rails by Example (GeekCamp edition)
Ruby and Rails by Example (GeekCamp edition)
 
SPA, Scalable Application & AngularJS
SPA, Scalable Application & AngularJSSPA, Scalable Application & AngularJS
SPA, Scalable Application & AngularJS
 
Prototypejs
PrototypejsPrototypejs
Prototypejs
 
DeveloperDeveloperDeveloper! Sydney 2012
DeveloperDeveloperDeveloper! Sydney 2012DeveloperDeveloperDeveloper! Sydney 2012
DeveloperDeveloperDeveloper! Sydney 2012
 
Advanced AngularJS Tips and Tricks
Advanced AngularJS Tips and TricksAdvanced AngularJS Tips and Tricks
Advanced AngularJS Tips and Tricks
 
Client Vs. Server Rendering
Client Vs. Server RenderingClient Vs. Server Rendering
Client Vs. Server Rendering
 
Ruby on Rails workshop for beginner
Ruby on Rails workshop for beginnerRuby on Rails workshop for beginner
Ruby on Rails workshop for beginner
 
European Collaboration Summit - SharePoint Framework Angular & Azure Functions
European Collaboration Summit - SharePoint Framework Angular & Azure FunctionsEuropean Collaboration Summit - SharePoint Framework Angular & Azure Functions
European Collaboration Summit - SharePoint Framework Angular & Azure Functions
 
Webpack: What it is, What it does, Whether you need it
Webpack: What it is, What it does, Whether you need itWebpack: What it is, What it does, Whether you need it
Webpack: What it is, What it does, Whether you need it
 
Integrating AngularJS with Drupal 7
Integrating AngularJS with Drupal 7Integrating AngularJS with Drupal 7
Integrating AngularJS with Drupal 7
 
Building a dynamic SPA website with Angular
Building a dynamic SPA website with AngularBuilding a dynamic SPA website with Angular
Building a dynamic SPA website with Angular
 
Angular2 + AWS Lambdaでサーバサイドレンダリングしてみた
Angular2 + AWS LambdaでサーバサイドレンダリングしてみたAngular2 + AWS Lambdaでサーバサイドレンダリングしてみた
Angular2 + AWS Lambdaでサーバサイドレンダリングしてみた
 
Namespace less engine
Namespace less engineNamespace less engine
Namespace less engine
 
Sizzle jQCon San Francisco 2012
Sizzle jQCon San Francisco 2012Sizzle jQCon San Francisco 2012
Sizzle jQCon San Francisco 2012
 

Similar a RailsAdmin - the right way of doing data administration with Rails 3

Introduction to OAuth2
Introduction to OAuth2Introduction to OAuth2
Introduction to OAuth2
leondu
 
Gaelyk - SpringOne2GX - 2010 - Guillaume Laforge
Gaelyk - SpringOne2GX - 2010 - Guillaume LaforgeGaelyk - SpringOne2GX - 2010 - Guillaume Laforge
Gaelyk - SpringOne2GX - 2010 - Guillaume Laforge
Guillaume Laforge
 
JavaOne 2011 - Going Mobile With Java Based Technologies Today
JavaOne 2011 - Going Mobile With Java Based Technologies TodayJavaOne 2011 - Going Mobile With Java Based Technologies Today
JavaOne 2011 - Going Mobile With Java Based Technologies Today
Wesley Hales
 
Webmontag München Cross Platform
Webmontag München Cross PlatformWebmontag München Cross Platform
Webmontag München Cross Platform
wolframkriesing
 

Similar a RailsAdmin - the right way of doing data administration with Rails 3 (20)

Nick Sieger-Exploring Rails 3 Through Choices
Nick Sieger-Exploring Rails 3 Through Choices Nick Sieger-Exploring Rails 3 Through Choices
Nick Sieger-Exploring Rails 3 Through Choices
 
Introduction to OAuth2
Introduction to OAuth2Introduction to OAuth2
Introduction to OAuth2
 
Scaling webappswithrabbitmq
Scaling webappswithrabbitmqScaling webappswithrabbitmq
Scaling webappswithrabbitmq
 
Chef in the cloud [dbccg]
Chef in the cloud [dbccg]Chef in the cloud [dbccg]
Chef in the cloud [dbccg]
 
Presentazione 28
Presentazione 28Presentazione 28
Presentazione 28
 
Railsconf 2010
Railsconf 2010Railsconf 2010
Railsconf 2010
 
Oscon 2010
Oscon 2010Oscon 2010
Oscon 2010
 
Red Dirt Ruby Conference
Red Dirt Ruby ConferenceRed Dirt Ruby Conference
Red Dirt Ruby Conference
 
Gaelyk - SpringOne2GX - 2010 - Guillaume Laforge
Gaelyk - SpringOne2GX - 2010 - Guillaume LaforgeGaelyk - SpringOne2GX - 2010 - Guillaume Laforge
Gaelyk - SpringOne2GX - 2010 - Guillaume Laforge
 
A Match Made In The Cloud
A Match Made In The CloudA Match Made In The Cloud
A Match Made In The Cloud
 
Web Development With Ruby - From Simple To Complex
Web Development With Ruby - From Simple To ComplexWeb Development With Ruby - From Simple To Complex
Web Development With Ruby - From Simple To Complex
 
JavaOne 2011 - Going Mobile With Java Based Technologies Today
JavaOne 2011 - Going Mobile With Java Based Technologies TodayJavaOne 2011 - Going Mobile With Java Based Technologies Today
JavaOne 2011 - Going Mobile With Java Based Technologies Today
 
12 hours to rate a rails application
12 hours to rate a rails application12 hours to rate a rails application
12 hours to rate a rails application
 
Ruby and Twitter at the Ruby drink-up of Sophia, January 2013
Ruby and Twitter at the Ruby drink-up of Sophia, January 2013Ruby and Twitter at the Ruby drink-up of Sophia, January 2013
Ruby and Twitter at the Ruby drink-up of Sophia, January 2013
 
Ror Seminar With agilebd.org on 23 Jan09
Ror Seminar With agilebd.org on 23 Jan09Ror Seminar With agilebd.org on 23 Jan09
Ror Seminar With agilebd.org on 23 Jan09
 
Upgrading to Rails 3
Upgrading to Rails 3Upgrading to Rails 3
Upgrading to Rails 3
 
Webmontag München Cross Platform
Webmontag München Cross PlatformWebmontag München Cross Platform
Webmontag München Cross Platform
 
Bar Camp Auckland - Mongo DB Presentation BCA4
Bar Camp Auckland - Mongo DB Presentation BCA4Bar Camp Auckland - Mongo DB Presentation BCA4
Bar Camp Auckland - Mongo DB Presentation BCA4
 
IronRuby for the Rubyist
IronRuby for the RubyistIronRuby for the Rubyist
IronRuby for the Rubyist
 
Node.js and Ruby
Node.js and RubyNode.js and Ruby
Node.js and Ruby
 

Más de Bogdan Gaza (8)

Weightlifting at SimplySocial
Weightlifting at SimplySocialWeightlifting at SimplySocial
Weightlifting at SimplySocial
 
Understanding and measuring web performance
Understanding and measuring web performanceUnderstanding and measuring web performance
Understanding and measuring web performance
 
[CLIW] Web testing
[CLIW] Web testing[CLIW] Web testing
[CLIW] Web testing
 
[TW] Node.js
[TW] Node.js[TW] Node.js
[TW] Node.js
 
[TW] CSS Files Optimization
[TW] CSS Files Optimization[TW] CSS Files Optimization
[TW] CSS Files Optimization
 
Fosdem2011
Fosdem2011Fosdem2011
Fosdem2011
 
De ce sa nu folosim Ruby On Rails?
De ce sa nu folosim Ruby On Rails?De ce sa nu folosim Ruby On Rails?
De ce sa nu folosim Ruby On Rails?
 
NoSQL in the context of Social Web
NoSQL in the context of Social WebNoSQL in the context of Social Web
NoSQL in the context of Social Web
 

Último

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 
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
vu2urc
 

Último (20)

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
 
Evaluating the top large language models.pdf
Evaluating the top large language models.pdfEvaluating the top large language models.pdf
Evaluating the top large language models.pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
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
 
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
 
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
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
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
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 

RailsAdmin - the right way of doing data administration with Rails 3

  • 1. RailsAdmin The right way of doing data administration RubyAndRails 2010 Bogdan Gaza RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 2. $  whoami Student at Faculty of Computer Science, Iasi, Romania Freelance web developer RubySOC 2010 student bogdan.gaza@info.uaic.ro @hurrycane RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 3. Data administration is ________* SPEAK UP! * talking in the context of a web app RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 4. ...  the  way  you  organize  and  control  your  data RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 5. Data administration means the admin panel. RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 6. HOW? Both  simple,  secure  and  fast RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 7. Most people write custom admin panels. prone  to  errors definitely  NOT  fast not  very  simple RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 8. Other use CMSs usually  secure NOT  fast simple  but  not  flexible RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 9. The Rails way of doing it using a plugin engine. usually  secure fast simple RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 10. And the choices are: RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 11. lipsiaAdmin ExtJS | permissions | Rails 2.x www.lipsiadmin.com RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 12. ActiveScaffold Embed-able | Third-Party-Plugins | Rails 2.x http://www.activescaffold.com/ RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 13. Hobo WebAppBuilder | Permissions | Rails 3.x http://hobocentral.net/ RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 14. Introducing RailsAdmin http://github.com/sferik/rails_admin/ RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 15. RubySOC  2010  Project mentors Erik Michaels-Ober, Yehuda Katz, Rodrigo Rosenfeld Rosas, Luke van der Hoeven and Rein Henrichs. RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 16. Began  as  Erik’s  MerbAdmin   and  then  got  ported  to   Rails  3 RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 17. RailsAdmin  is  a  Rails  Engine RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 18. Basic Engines controllers require 'rails_admin/abstract_model' module RailsAdmin   class ApplicationController < ::ApplicationController   end end RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 19. Basic Engines models module RailsAdmin   class History < ActiveRecord::Base   end end RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 20. Basic Engines routes Rails.application.routes.draw do     # Routes for rails_admin controller     controller "main" do       match "/", :to => :index, :as => "dashboard"       match "/:model_name", :to => :list, :as => "list"       ...     end end For more info checkout the mountable apps RubySOC project. RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 21. RailsAdmin } C Create new R Show U Easily Update Your  Data D Safely Delete Automatic form validation Authentication (using Devise) Multi-column-search Use Action History (per row) RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 22. RailsAdmin  -­‐  simple  to  install Add in your Gemfile gem 'devise' # Devise must be required before RailsAdmin gem 'rails_admin', :git => 'git://github.com/sferik/rails_admin.git' Run $ bundle update Also run: $ rails generate rails_admin:install_admin RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 23. With  Rails  3.1  Rails  Admin  will  be   mountable.  (Thanks  to  Piotr!) RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 24. Rails.application.routes.draw do mount Admin::Engine => "/admin" end RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 25. DEMO RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 26. Rails  3.1  and  RailsAdmin  1.0  around  the end  of  the  year. RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 27. e? Do vi s hav es it De e au nee hy the ntic d to W QA atio n? Con figur ns atio i ssio n? Perm RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 28. Configuration DSL experimental Thanks to kappa (Petteri Kääpä)! http://gist.github.com/638153 RubyAndRails 2010 @hurrycane Thursday, October 21, 2010
  • 29. Thanks! RubyAndRails 2010 @hurrycane Thursday, October 21, 2010