'mongocms' is a cms based on mongoDB. This is the first official release v0.1.
A powerful basic contenttype 'Page' with attachments, links, settings, content permissions ...
Presets for image attachments to autogenerate thumbnails ... (like imagecache in Drupal)
Example for a custom contenttype: Slideshow
Add to favorites, print, direct edit links in pages
3 level permissions for user roles:
Autogenerating menu
...
See downloadfile 'mongocms.quickstart.01.pdf'.
'mongocms' includes following additional extensions, no need for extra installation:
You can download the preconfigured 'mongocms.fullapp.01.zip' or install manually:
Install the extension yiimongodbsuite
Extract mongocms.01.zip into protected/modules
1. Register the module
... 'modules' => array( 'mongocms' => array( //'mongoConnectionId' => 'mongodb' //(=default) 'modules' => array( 'slideshow', //register the contenttype as submodule ), ), ...
Note: Take a look at the public properties of MongoCmsModule for more configuration possibilities to expose here
2. Register the mongocms behavior
... behaviors' => array( 'mongocms' => 'mongocms.components.MongoCmsBehavior', ... ), ...
3. Register the controllers in the controllerMap and set the defaultController of the application to the ContentController
... 'defaultController' => 'content', 'controllerMap' => array( 'admin' => 'application.modules.mongocms.controllers.AdminController', 'files' => 'application.modules.mongocms.controllers.FileController', 'content' => 'application.modules.mongocms.controllers.ContentController', 'user' => 'application.modules.mongocms.controllers.UserController', ), ...
Note: - Step 3 is optional, but it 'hides' mongocms module - You can change the key, but then you have to rename the corresponding directoryname in the themes folder too.
4. Register and configure the components
... 'components' => array( ... 'mongodb' => array( 'class' => 'EMongoDB', 'connectionString' => 'mongodb://localhost', 'dbName' => 'mongocms', 'fsyncFlag' => true, 'safeFlag' => false, 'useCursor' => false ), 'user' => array( 'allowAutoLogin' => true, 'loginUrl' => array('/user/login'), //or /mongocms/user/login if the controllerMap is not used ), 'urlManager' => array( 'urlFormat' => 'path', 'rules' => array( // '<controller:\w+>/<id:\d+>' => '<controller>/view', // '<controller:\w+>/<action:\w+>/<id:\d+>' => '<controller>/<action>', // '<controller:\w+>/<action:\w+>' => '<controller>/<action>', ), ), ... )
Note: The default rules of the urlManager conflicts with the handling of viewing pages in mongocms
Call the url index.php (or index.php/mongocms if defaultController is not set) and see what happens ...
Total 17 comments
this app may require the "user" module to work!
This released mongocms code is nearly 2 years old, you should not use it for serious projects. I'm still working on the mongocms and have a few websites online, but a lot has changed. The core code changes on every new project. I plan to release a working version if it's really a 'ready-to-use' cms, but this can take months ...
But you can take a look at the code, if you want an example how to work with the YiiMongoDB Suite.
The bugfix for the error: The params of the 'actionCreate' of the 'ContentController' are different from the parent (AdminController). I think PHP 5.3 doesn't like this. So you have to change the ContentController::actionCreate like below. Maybe there are more errors like this.
after I put mongocms.fullapp.01.zip in my project file I get this error:
Declaration of ContentController::actionCreate() should be compatible with AdminController::actionCreate($modelClass = NULL, $docroute = NULL)
can you help me?
I'm working on a few customer projects basically started with this first release. Compared to this release a lot of code has been added and changed. This is an example: www.v-ticket.at (german language only)
It needs time to remove all the project-specific stuff to extract a community-release as an example site. Hope to publish the next release withing the next 2-3 month...
Waiting for new releases! Thanks
Undefined variable: bizRule at /protected/modules/mongocms/components/MongoCmsAuthManager.php(322)
anyone met?
I have started a commercial project based on mongocms 0.1., did a lot of changes and new features since the first release.
My roadmap is to finalize my project and then extract the version 0.2 (with the essential functionality for general use) out of this.
So you have to wait for about 2-3 month for the next release, but then 'mongocms' should be useful ... hope so ;-)
Yes that was it, thanks
I think your php mongoDB driver is not installed correctly.
php is connecting to the mongoDB by: $m = new Mongo();
see PHP MongoDB manual
When the driver is not installed the class 'Mongo' is unknown and Yii tries to load a class from a not existing 'Mongo.php'
Refer to the manual how to install the PHP mongoDB driver.
No ideas, sorry ...
There should be the output of the file and line where this error occurs. Please submit this detail.
I have just downloaded the fullapp package and when I run it I get the following error.
Any ideas why?
Many thanks for your note... and for YMDS too ;-)
Hey,
I'm glad that YMDS is used for such nice projects! I've had quick overview of an code, good job, one hint about YMDS:
there is a little lack in documentation about indexing,
ensureIndexesshould be called before callingparent::init(), or declared as a normalprotected $ensureIndexes = true|false;field, otherwise the mechanism will always run on every model creation, I'll add a note about this.Anyway, keep up the good work :) canni
... but now you can test.
Can't wait for your extension.Thanks in advance.CMS is essential...
I have to work about 3 or 4 days on this. The first alpha release will be uploaded at the end of this week.
Very interesting in soon release. Waiting...
Leave a comment
Please login to leave your comment.