 Hello Today I'm going to talk to you as he said about Rails admin, but first a little about me. I'm a student from Romania I'm a developer for more Jotek. I've been a student in the Ruby summer of code of 2010 and The rails admin is the project is my project for the Ruby summer of code if you have any questions feel free to ask at the end of my presentation and You can find me of course on Twitter at at hurricane with an eye so What is the administration every web developer? Sometimes in the past when he wrote the his first web app thought about how to do data administration how to manage and control his data, so data administration differs from web app to web app but and in The way you organize your data is And you control the data is The way you do data administration, so you organize your data That's the logic of your application and the way you control it that is the data administration, so Usually you do this via an admin panel, so there are a lot of types of admin panels out there You can do the administration in all sorts of way but how to do it and Secure and a fast way usually many people Write their own admin panels, so this is a little error prone because you have to test it very well It's definitely not fast because you have to waste a lot of time and It's not always very very simple Other people use CMS's so This is usually fast. This is usually not fast Because you have to learn how the CMS works and everything, but it's usually secure But it's not and it's flexible somehow Also the rails way of doing it is using plug-in or now in the rails 3 and engine and This is all of three so it's secure because You plug in you plug the you know the plug-in that it's very well written or it has a lot of tests running on it So it's Secure it's fast because you just plug in the the engine and when it works and it's also very very simple So introducing the rails admin you can find a code on github at that address As I said, it's a Ruby summer of code 2010 project My main mentor was a Eric Michael Alberts Albert So it was a very very nice collaboration between us also a lot of important people from the Ruby on rails community Contributed to to this to this project as mentoring and everything like you who the cuts and all the people mentioned The history of the rails admin is that Eric coded the mer bad men that is a port of the well-known Django admin and I had to port the mer bad men to to rails 3 so The rails admin is in fact rails engine that is a feature introduced in rails 2 and Continued to rails 3 so you have basic Ruby on rails application and you can run that application in a different Ruby on rails application just Structuring your code a little different So you have you keep your main logic with controllers models and views and you just namespace your application and Through many through magic everything works. So it's it's very very simple to write an engine So this is a controller that is just namespace and it works also You can do that with the module also and That's the the basic of rails engines also the riots that is a pretty important thing in the rails you can also do this in your in your app and Everything works out of magic. So it's it's a very nice to write Rails engine So rails admin does the crud thing very very well. It does automatic form validation Of course you want to have your data Protected by some sort of authentication. So we we use device you can do column search history. It's a pretty pretty Full option admin panel So how do you install it you just write in your gem file to lines of code you run a bundle update and after that after that you just another line of Generators and that's it. You're admin is plug into your rails app also an important feature that is going to be Available in rails 3.1 is mountable apps. So I have my rails engine that is not installed via gem and I only say Mount an application and it all works Okay, so I'm going to do a short demo to show you how The mirror the rails admin works Okay, so this is my typical web sorry web application and I have put the Sorry, I don't know if it's it's very nice to see but Okay If we do Okay, perfect so You just put these two lines of code and everything works and you run the the basic installation so you start the web server and It works in fact, sorry that's there was there because It's a basic rails application does not have the the basic path set out so You run this if you have a clean web application installed you have the rails admin asks asked you for a username and password that is on via device and This is how the main panel looks like I have a simple post small model and I can view multiple columns. I can edit different Entry I can create a new one. Also it maps validations. So if you have one too many or many too many Association sorry does that you can put in Let's say we do a quick Title I think so I put a validation There and I hope that I Okay, so if I do this it says It could not update to the post because it has a blank title So this is the basic rails admin also you can do searches you can multiple you can select different entries to delete and You have a history that is real based. So every modification to your Table is mapped to the history table So this is the basics of the rails admin So we're going to launch the rails admin 1.0 in a few weeks That's the main milestone for the rails admin But if you pull the the code from the git repository, it's Production ready. We have a lot of tests written so you can run those tests and see that everything passes Also since I've stopped working on on Ruby summer of code in September we had we have now 1200 Watchers and github it has been translated into 12 languages and Configuration DSL has been written by the community. So a lot of people contribute to our application and This is a sample of the configuration DSL if you want to hide model in your application you just do this and The model disappears Okay, so If you have any questions feel free to ask there is a lot of debate on our issue tracker and github because People don't want a rails admin to use device Because it's normal in some way because because There are every people every web developer wants to write his own authentication scheme so it's not very very used device by the community but We use it and The project as the rails admin has starting to have a lot of users Permissions we haven't set up some sort of permission framework for the application. So the user has just one super the Plug-in has one super user that does everything the configuration is being done through the DSL any questions Please can you repeat the question, please? No Okay, so he asked that for the rails one point. Oh, we support polymorphic associations. That's right. Okay for the moment now, but if you really need the polymorphic associations your fee to pull a request and get and do that yourself and We have a lot of contributors that are going to accept your patch as quickly as we can so We have Now seven month since we started the project. We're pretty young and we accept as many contributors as we can another question No, okay. Thank you very much You