NECFUG - Nov 2010
ColdFusion On Wheels
Conventions Over Configuration
Mike Henke
http://www.henke.ws
henke.mike@gmail.com
twitter: mikehenke
Thanks
NECFUG * Ryan Stille * Mark Kruger *
Wheels Core Team http://bit.ly/coIvaN
Understanding Wheels
in One Tweet
@SimianE - Trying to get my head around cfwheels... I'm beginning to think writing my own framework would be easier than learning one!!!
Controller files maps to folders in Views with methods mapping to view files
Wheels Philosophies
Working With Wheels
New Features 1.1
Conclusion
Resources
Outline Of Session
Wheels Philosophies
Convention Over Configuration (CoC)
Model View Controller (MVC)
Active Record Pattern (ORM)
Simplicity Revival
Active Record Design Pattern
Approach to accessing data in a database
DB defines data - object access it
Implementations of Active Record Pattern
Rails (ActiveRecord), PHP, .Net,
Python, Perl, ColdFusion
Starting in Seconds
Download & Place in Web Root
http://cfwheels.org/download
FuseGrid
MARC (MySQL,Apache,Railo
Working With Wheels
View
Conclusion
Wheels Philosophies
MVC, CoC, Active Record, & Simplicity Revival
Intuitive File Organization,
Naming, and Configuration
Wheels Object Relational Mapping (ORM)
Associations
Validation
Complex SQL
Questions?
Resources
http://cfwheels.org
http://geekandpoke.typepad.com
Controller
Model
Association
Validation
Complex SQL
/Controllers/Say.cfc
/Views/Say
funtions (actions)
like hello
/Views/Say/hello.cfm
URL Examples & Request Handling
URL Pattern -[controller]/[action]/[key]
Wheels In A Nutshell
http://groups.google.com/group/cfwheels
http://cfwheels.org/docs
http://cfwheels.org/screencasts
http://cfwheels.org/docs/chapter/beginner-tutorial-hello-world
http://henke.ws/page.cfm/downloads
http://www.fusegrid.com
http://localhost/index.cfm?controller=say&action=hello&key=1
http://localhost/index.cfm/say/hello/1
http://localhost/say/hello/1
Hibernate
Is an ORM solution
Uses data mapper pattern
Objects define data - database stores it
What are we trying to solve with ORMs?
Simplicity Revival
* Nested properties allow you to save changes to multiple associated database tables in one form object.
* Automatic validations give Wheels the ability to introspect your database and register validations without your needing to write a single line of code.
* You can now respond to requests for HTML, JSON, XML, PDF, Excel, and more in a single controller action.
* Nested layouts allow you to extend layouts and remove repetition in your view code.
New Features 1.1
http://WheelsInANutshell.com/say/helloMore presentations by Mike Henke
Cloudy with a Chance of Tests
Mike Henke on
Continuous integration with no unit tests jenkins hudson coldfusion ant