I am learning Ruby On Rails development, and am currently working on a website(mine). I need to make a CMS for it, as it needs a lot of unique features and it would be a much more hassle than adding them into an already done CMS. I have time so that isn't a problem either...
As I am learning Ruby On Rails, I would like to use Ruby On Rails.
Can anybody give me pointers how I can start such project? One thing that is really confusing me is, as this is a CMS its basically a program, So do I build a "blank" ror project and code the CMS from there? Or write a bunch of Ruby files and somehow "join" them?
I'm not sure you need to write a CMS from scratch for a custom website. Seems overkill.
If you choose the CMS path, may be you could start by customizing one of the existing Rails CMS?
You could start by forking those Rails CMS source code :
fl00r made a very good comment. You need to read lots of things before going deep into creating a CMS. The main reason is HOW you code it. As you get better and better with Rails it's CERTAIN that you will be refactoring your code a lot. I still do it all the time. Therefore, a CMS can be very very difficult to maintain unless you know Rails quite a lot.
Instead, i would also advice that you create some projects first and little by little also work in your CMS. You would be needing polymorphic associations, scopes and many other advanced techniques on that one, so please, before doing it, make sure that you understand Rails in quite some depth.
Also, notice that Rails should save the hassle of writing a complete CMS. CMSs are usually great because they cut down the coding and people usually trade that with missing features and customization. On the other hand, Rails is all about rapid development, which kinda feels like an application can be created to work like a CMS, fast and reliably.
I think you must analyze kind of CMS built on Ruby On Rails like : Rubricks and Refinery
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With