@paulinthought
I made both of these changes, but no change.  Also, using pr
($project_id) in the controller does not display anything (because
project_id is null???)


@brian

I modified my routes to the following, but no change.

    Router::connect(
         '/risks/add/:project_id',
         array(
                 'controller' => 'risks',
                 'action' => 'add'
         ),
         array(
                 'project_id' => '[0-9]+',
                 'pass' => array('project_id')
         )
        );

On Jun 3, 11:38 am, brian <[email protected]> wrote:
> I'm not positive about it, but I think you need to add a regexp:
>
> Router::connect(
>         '/risks/add/:project_id',
>         array(
>                 'controller' => 'risks',
>                 'action' => 'add'
>         ),
>         array(
>                 'project_id' => '[0-9]+',
>                 'pass' => array('project_id')
>         )
> );
>
> On Wed, Jun 3, 2009 at 12:15 PM, jake1729 <[email protected]> wrote:
>
> > I have been struggling with this for about 3 weeks.  A variable is not
> > being created in the pass array.  I need the value of "project_id" to
> > be included when creating a new risk.  The Risks table must have a
> > value for project_id.
>
> > Please, what am I doing wrong here?
>
> > ======
> > CONTROLLER (RisksController)
>
> >        function add($project_id = null) {
> >          if (!empty($this->data)) {
> >                        $this->Risk->create();
> >                        $this->data['Risk']['project_id'] = $project_id;
> >            if ($this->Risk->save($this->data)) {
> >                                $this->Session->setFlash(__('The Risk has 
> > been saved', true));
> >                                $this->redirect(array('action'=>'index'));
> >                        } else {
> >                                debug($this->params);
> >                $this->Session->setFlash(__('The Risk could not be
> > saved. Please, try again.', true));
> >                        }
> >                }
> >                $projects = $this->Risk->Project->find('list');
> >                $riskcategories = $this->Risk->Riskcategory->find('list');
> >                $this->set(compact('projects', 'riskcategories'));
> >        }
>
> > ======
> > ROUTE (routes.php)
>
> > Router::connect(
> >         '/risks/add/:project_id',
> >         array(
> >                 'controller' => 'risks',
> >                 'action' => 'add'
> >         ),
> >         array(
> >                 'pass' => array('project_id')
> >         )
> >  )
>
> > ======
> > VIEW (creates link with project_id value; inside of projects view.ctp)
>
> > <li><?php echo $html->link(__('Add New Risk', true), array
> > ('controller'=> 'risks', 'action'=>'add', 'project_id' => $project
> > ['Project']['id'])); ?> </li>
>
> > ======
> > URL (being passed to risks add action.  The "1" below is the passed
> > project_id, whichI need to pass to the database when adding new risk)
>
> >http://localhost/PBSRG/cake_1_2/risks/add/1
>
> > ======
> > DEBUG (debug($this->params);  in the add action in risks_controller)
>
> > Array
> > (
> >    [pass] => Array
> >        (
> >        )
> >    ...
> > }
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"CakePHP" 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