0.0
No commit activity in last 3 years
No release in over 3 years
Common-content is a simple CMS rails engine plugin for Mongoid based apps
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
 Dependencies

Development

Runtime

~> 3.2.1
 Project Readme

Common Content

Common Content is a Rails Engine Gem that provides a mini-CMS (Content Management System) based upon Mongoid/MongoDB and Bootstrap.

The purpose of Common Content (CC) is to provide a easy, pluggable way for Mongoid-based Rails sites to give users the ability to edit the blocks of content that appear within the site. CC is not a full-fledged CMS system, it’s a simplified way that site admins can create blocks of content using a streamlined DSL and then content producers can maintain and edit the content setup by the admins or ‘editors’.

Installation

CC must be hosted within a Rails 3.x app that also includes Mongoid. CC does not specify a Mongoid connection and relies on the host app for Mongoid config.

In your gemfile

gem ‘mongoid’
gem ‘common-content’

`bundle install`

Using

(CC) is a rails engine and must be installed as a gem within a rails 3.x host app. It then makes
available the /contents path for creating,editing, and viewing Content items.

Views

(CC) has a complete set of views under the /app/views space within the gem. As a rails engine
the host app can replace and customize those views by overriding and adding .erb files under a
/contents folder in the host app.

The gem uses a convention-based method of finding the views for a particular piece of content.
So if the host app wants to provide a custom view for a particular content-item or in the case
of edit-views for a certain Resource type you can provide the correct named view partials
under the /views/contents folder of your app.

ETags and Caching

The JSON interface to the Content and Page items will use the standard Rails JSON facility, and will return ETags based on the hash of the returned JSON. This should allow caching of the results and cache-invalidation based on the ETag.

TODO

A lot…

Figure out how to link to other content via a HATEOS type url and be able to pick items and
order them. How to edit sub-content, just link to it’s show page? Restrict definition and creation to the editor role or login. Add more meta-types like
FAQ, definition, etc.

See Also

link:https://github.com/deathbob/Contentment
link:https://github.com/parndt/seo_meta
link:https://github.com/resolve/refinerycms
link:https://github.com/jcasimir/draper
link:http://blog.steveklabnik.com/posts/2012-01-06-implementing-hateoas-with-presenters