No sweat. I just followed up to address the issue to the OP (specifically, the OP's concern that inter-component changes in MVC must somehow be a hassle). I must admit, however, I was a little surprised that you did not define Model to look something more like:
my $data = [
{type=>'fruit',food='apple'},
{type=>'veggies',food='carrot'},
{type=>'meat',food='bacon'},
];
or
my $data = [
[qw(fruit apple)],
[qw(veggies carrot)],
];
This is the approach I tend to use most often (with obvious anticipation that "M" will be eventually migrated to a database). I almost always use AoH in fact.
Yours breaks the MVC separation because the Controller now needs to know that the Model stores its data in a hash ...
Perhaps, although I don't think it necessarily 'breaks' the pattern to introduce simplifying assumptions about M (especially in tutorial-type code examples like here). Unless your MVC framework always uses reflection, or a sufficiently expressive and universally disambiguating syntax, your V and your C are going to have to know at least *something* about your M.
Anyway, I just figured you were trying to save some typing ... (which is why I didn't even bother to give a code example at all in my first response ;-).
=oQDlNWYsBHI5JXZ2VGIulGIlJXYgQkUPxEIlhGdgY2bgMXZ5VGIlhGV
|