The Power of Arguments in Records.cfc

We have come a long way in our question to easily manage records and files. Taking advantage of the com.sebtools library, we have a single file that effectively provides a component for every table and methods for every basic action on that table. I would like to focus in a bit more on the API for these components now. Specifically, I would like to focus on how we can get the recordset we want - even for operators other than equality.

What we want is to be able to specify the exact recordset that we want - which columns, which rows, which pages - by passing in arguments. Ideally, we could do this just in our data definitions without writing any extra code.

[More]

Relating Tables with Manager.cfc

Today we continue our quest to use com.sebtools to easily manage records and files in our example HR application. So far, we have defined our data set with XML, gotten that definition into Records.cfc, and consolated our multi-table application with ProgramManager.cfc. The last step wasn't necessary for a multi-table application, but does make things nice.

What we don't have, however, is any interaction among our tables. We have Departments and Employees, but no relationship between the two. For this example, an employee can work for one (and only one) department.

There are a few pieces of information that are helpful for most of these sorts of relationships. We would like to know the name of the department for every employee (and perhaps a boolean indicating if that employee is in a department). We would also like to have the number of employees for any given department and a boolean indicating whether or not that department has any employees. Fortunately, Manager.cfc can provide all of this for one short line of code.

[More]

Multi-Table Applications with ProgramManager.cfc

Today is Tuesday, so it must be time to continue figuring out how to take advantage of the com.sebtools package to manage CRUD and files in the easiest possible way.

So far, we have defined our data set with XML and gotten that definition into Records.cfc but we have only been using one table. To be clear, there is no reason we can't continue to do things the we we have been doing them and still handle multiple tables. It is only that we would have to have a separate component for each table.

Not only that, but the goal is to have an "HR" application. It seems to be that it would be convenient to have the model for the application all tied together.

[More]

Getting Data to Records.cfc

In our last Records/Manager blog entry, we dealt with XML syntax for defining a data structure in Manager.cfc. Although Manager.cfc is plenty useful by itself, I like to use it with Records.cfc.

Before we talk about how to get data into Records.cfc, we should cover how the two relate. Manager.cfc actually stores all of the data structure definitions and does all of the work. It manages the database (through DataMgr) and the files (through FileMgr) and image sizing (through CFIMAGE.cfc). So, why have Records.cfc at all?

[More]

Basics of Manager.cfc XML

In my last entry on Manager.cfc, we covered a fairly basic example of managing widgets with images and thumbnails. I want to step back this time and start with a more simple example to allow us to really dive in and understand some of what Manager.cfc provides. This example will be expanded in subsequent entries to provide more complexity to cover some of the challenges that you might run into in the real world.

For our example, we have a client that has asked us to build an HR application. One part of that is that the company has 5 departments:

  • Executive
  • I.T.
  • Legal
  • Production
  • Sales

When asked if these will ever change, our client says "I don't think so." (which, of course, means "probably"). So, let's set up the XML for this table:

[More]

Super Easy CRUD/File Management

A few months ago, I wrote about using Records.cfc and Manager.cfc to manage records and associated files. I just released a new build of the com.sebtools package that contains these components and it makes a really easy process even easier. I am really excited about how easy this stuff is now.

[More]

Records / Manager Form

Much of this entry has been updated as Super Easy CRUD/File Management.

I did a rough introduction to Records.cfc last time - just enough to show how it can make really basic CRUD operations easy. This time I want to show how you can take advantage of it to help keep your applications DRY.

In addition to the methods that I discussed last time, Records.cfc components (that is, components that extend Records.cfc) also get another method that I would like to discuss today:

[More]

Records / Manager

This entry has been updated as Super Easy CRUD/File Management.

It occurred to me recently that I haven't yet blogged about one of my favorite tools in my com.sebtools package. It makes the most common CRUD tasks dead simple (I think more than any other CRUD tool that I have seen). Records.cfc is one of the only components in the com.sebtools package that is used by extension rather than composition. Normally, I prefer composition but I think the benefits are worth it in this case.

Rather than try to describe what it does in generic terms, let's start with an example. We can start with a completely empty folder.

[More]

Updated SpamFilter Definitions

This is just a quick note that I have updated the spam definitions for SpamFilter.cfc. So, if you are using SpamFilter.cfc and have the second argument of init ("getNewDefs") set to true, simply re-initialize it and you will have the updated definitions.

[More]

Introducing Manager.cfc

I have been told by some people using DataMgr that it should handle files as well. The problem with that is that managing files is outside the purview of what DataMgr should do.

I actually do have another project called FileMgr (part of the com.sebtools package) that does a little bit of what DataMgr does, but for files. Mostly, it handles uploads and makes sure that the needed folders exist - one less thing to worry about on deployment.

What would be nice, is a component that works like DataMgr but handles files (and even image resizing) just as automatically as DataMgr handles data.

The component is (showing no imagination on my part) called Manager.cfc.

[More]

More Entries

BlogCFC was created by Raymond Camden. This blog is running version 5.8.001.