Login

    Register

Managed Hosting

PROJECT CATEGORIES

 

CFScaffold
Project Home Blog Forums Known Issues External Project Link Contact Project

Author: Andrew Clarke (All RIAForge projects by this author)
Last Updated: June 7, 2011 1:21 PM
Version: 20110607
Views: 16,752
Downloads: 954
Demo URL: http://www.clarke.ca/cfscaffold/examples/index.cfm
License: Apache License, Version 2

Description:

CFScaffold provides a drop-in way to do CRUD (create, read, update, delete) on your objects. If you're using ColdFusion's or Railo's built-in ORM functionality (Hibernate in the background), CFScaffold will pick up the metadata from your objects and will provide you with a web site that could be used as part of your administrative console or front end.

All the other CFML scaffolding tools I've seen generate code. CFScaffold is different in that all views and actions are dynamically generated, based on your objects. If you modify your objects and properties, you won't have to regenerate any code to see the updates.

This first version is still fairly basic and certainly lacks a lot of visual appeal. The idea is that you can use the current layouts as-is, modify them with CSS, or replace them with your own templates. The view is separated from the business end, so you should be able to create your own views if necessary while still taking advantage of CFScaffold.

This first release also has not built-in security or authentication. It is therefore crucial that you secure CFScaffold appropriately.

You can see a demo of CFScaffold at http://www.clarke.ca/cfscaffold.

--

2011-005-10 update:

You can pass in a SmartList to the MetaData object.
More CSS classes: linkBackToEntityList, linkHome

I added an "advanced" example, to show some of the non-default options with CFScaffold. This example uses FW/1 in the background. The default example was dumbed down to be completely default. For example, the entities no longer have toString() functions.

Significantly rewrote layouts to modularise the different types of layout components (dropdowns, textareas, etc.) This is still a work in progress. It works, but it's not as clean as I'd like.

URL_layouts in settings.ini

layouts/default/includes/displayProperty.cfm
- If a user's permissions do not allow a field to be displayed or edited, the form field value is passed as a hidden field. This has the side-effect of allowing a user who does not have permission to view a field's value to be able to "view source" of the page and see the value ... I think. I need to look back over the code more.
- Account for null sub-object relationships. Previously there would be an error if the foreign key was null.

layouts/default/listObjectInEntity.cfm
- URL_base_edit

/layouts/default/includes/edit_textarea.cfm
- Use textarea instead of cftextarea due to lack of cftextarea support in Railo

/CFCs/CFScaffold.cfc
- Fixed a problem with file uploads on new entities.
- Start allowing blank values (null) in integer fields.
- Fixed spelling error for "associations"

Last Update:

The previous build was missing the ca.clarke components.

Requirements:

Tested in Railo 3.2 and Adobe ColdFusion 9.0.1.

Issue Tracker:

There are no issues for this project.

To enter issues for this (or any other) project, you must be logged in.