Hi Sliv,

Sorry about the filenames - that's a typo in my post.

Unfortunately I don't currently have access to the shell on the web
server.  I will attempt to run bake on a clone of the database on
another server when I can get my hands on one to see what it yields,
but that might be a few days.

Do you believe that what I have done is correct, and should work?

Thanks again,

Chris

On Apr 10, 4:51 pm, Sliv <[EMAIL PROTECTED]> wrote:
> Well the first thing I noticed is your model filenames are not
> following cake conventions, they should be singularized (request.php
> not requests.php).
>
> Have you tried baking your MVC as a start rather than coding it by
> hand?
>
> On Apr 10, 6:50 am, Chris <[EMAIL PROTECTED]> wrote:
>
> > Hi All, I'm new to Cake and while I feel I have a good grasp of many
> > of the concepts and conventions I have stumbled across the following
> > problem.  It's probably a simple lack of convention following, but
> > I've read the manual over and over and I feel this should work.
> > Hopefully my description will be succinct!
>
> > I have 3 tables:  groups, requests and request_statuses.
> > A single request belongs to a single group and it has a single
> > status.  Hence a single group has many requests, as does a single
> > request_status.
>
> > I created the tables are follows (note: the request_statuses and the
> > groups tables will be modified by an admin, and so I'd rather the ids
> > were words than integers):
>
> > CREATE TABLE `requests` (
> >   `id` int(11) NOT NULL auto_increment,
> >   `name` varchar(32) NOT NULL,
> >   `request_status_id` varchar(16) NOT NULL default 'submitted',
> >   `group_id` varchar(8) NOT NULL default 'unknown',
> >   PRIMARY KEY  (`id`)
> > )
>
> > CREATE TABLE `request_statuses` (
> >   `id` varchar(16) NOT NULL,
> >   `name` varchar(16) NOT NULL,
> >   PRIMARY KEY  (`id`)
> > )
>
> > CREATE TABLE `groups` (
> >   `id` varchar(8) NOT NULL,
> >   `name` varchar(16) NOT NULL,
> >   PRIMARY KEY  (`id`)
> > )
>
> > The models look like:
>
> > app/models/requests.php:
> > class Request extends AppModel
> > {
> >   var $belongsTo = array(
> >     'RequestStatus',
> >     'Group'
> >   );
>
> > }
>
> > app/models/request_statuses.php:
> > class RequestStatus extends AppModel
> > {
> >   var $hasMany = array(
> >     'Request'
> >   );
>
> > }
>
> > app/models/groups.php:
> > class Group extends AppModel
> > {
> >   var $hasMany = array(
> >     'Request',
> >   );
>
> > }
>
> > If I create a app/controllers/requests_controller.php thus:
>
> > class RequestsController extends AppController
> > {
> >     var $scaffold;
>
> > }
>
> > then when I access this page to list the requests - the 'Group' column
> > in the resulting table is laid out correctly with links to the groups
> > pages, but the 'Request Status' contains the error:
>
> > "Notice: Undefined index: request_status_id in cake/libs/view/
> > templates/scaffolds/index.thtml on line 79"
>
> > I also note that the scaffolding index page for request_statuses shows
> > the errors:
>
> > Warning: Invalid argument supplied to foreach() in cake/libs/
> > controller/controller.php on line 666
> > Warning: Invalid argument supplied to foreach() in cake/libs/
> > controller/controller.php on line 801
>
> > As far as I can tell I've done everything right.  Can anyone a) tell
> > me why I get the error, and/or b) while you're at it generally point
> > out and misunderstandings I may have demonstrated in my understanding
> > of cake.
>
> > I've tried refactoring everything down so that the 2 words "request
> > status" become the single word "requeststatus", and that works.
> > Obviously I could stick with this, but I feel it could and should be
> > better.
>
> > Many thanks for reading this far and for giving it some thought.
>
> > Chris

--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups "Cake 
PHP" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/cake-php?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to