How could I possibly code anything new up on the day that "Super Mario Galaxy" comes out? Heck, it's a wonder I even managed to feed myself. But listen, something has been bugging me about the way figures are organized in the database. What was bugging me, you ask? Well, I got to thinking about the Japanese line of toys, and the fact that they're often really the same exact figures we get, only packaged differently. Now the intent of the DB all along has been to work things such that we only have one record per figure, and we link that figure to different packages, to avoid redundancy and provide some cool browse-ability. But that only really works within a toy-line. If I add "Convoy" to a Japanese line, do I link the package to the Optimus Prime over in the American line? That would be lame, confusing, and make figure browsing a mess.
But I think I've got it licked. What I propose to do is to remove the category id from the figures table. So a figure, in other words, will have no category. All it will have is a link to a package. So when you create a figure, in other words, instead of picking a category, you'll simply pick a package. Once a figure is linked to a single package, our worries are over. We can still browse figures by category, now, but internally we do it by drilling through a package. So if a figure is included in two packages, say Cybertron Optimus Prime, and Galaxy Force Optimus Prime, when browsing by figure you'll see him in either category.
This will just make everything a hell of a lot nicer, and as a bonus will solve some of the duplicate name issues we've been having for figures. Aaaand, we'll also be able to effectively show which figures are in your collection. Mmmm, why didn't I think of this a month ago? Maybe Mario knows! I'll ask him tonight, and then get started on this tomorrow. Stay tuned, folks...
- shmax