I want to use this topic to discuss some feature suggestions I had with the community. This post may sound a bit ranty but trust me it is not meant to be. I just want to voice some of the annoyances I had with the framework so far and some feature suggestions that arise from them.
Node Controllers and ‘out-of-the-box’
After using PT for the past week I really wish nodes would behave more like Rails framework scaffolds in that they have:
- dedicated controllers (that inherit from PushType) allowing for a more conventional way to route, pass parameters and make variables available in specific views. I mean how do you even link to an
indexnode view whilst passing it a search query that narrows down the items displayed in that view. Think
Article-Node and a search parameter filtering out non-matches. This can be done easily in rails in the controller action. Lack of a controller makes this impossible.
- models that allow for relationships with other models (and that use Rails
has_manykeywords to create relations in both directions). Why does PushType use GUIDs? It breaks compatibility with other non-PushType models,
- as well as views (in addition to what is currently the
showview equivalent). An
indexview at the very least would be extremely useful and would make more sense from a user point of view. It makes no sense to want multiple
ArticleListnodes (which serves an an
indexview) but the “New ArticleList” button is always there ready to be (mistakenly) clicked.
PT’s forms are very easy to use and user friendly. With the every increasing number of field types and community contributed custom fields it would be really cool if PT’s forms could somehow be reused in the front end, via a domain specific form builder with a PushType specific DSL.
Built in organisational nodes (e.g.
How about built-in category/folder nodes that allow users to organize content graphically without having to create a category/folder/whatever node.rb file. This would be useful to organize the backend a bit
Speaking of the backend, I would prefer if the backend was structured like ActiveAdmin in that different Nodes (for example, Article, Category etc.) get their own menu item and section in the PT backend, rather than listing everything in one communal table with all node types in the same list.
The current backend gets very confusing when there are different nodetypes that are only there to organize content (eg. List nodes that create essentially
index views and categories which are used as select options for other nodes)