Normally, when you add a record with a form to a database table, CakePHP 
will automatically fill in the "created" field in de database with the 
current date & time. It works for my table called "attractions" (model 
"Attraction").

But now, strange things are happening. When I add a record for:

   - model "AttractionProperty", table "attraction_properties"
   - model "AttractionTypes", table "attraction_types"
   - model "AttractionPropertyLink", table "attraction_properties_links"
   - ...

... both the fields "created" and "modified" are filled in. I checked if 
the id of my model is set in the add action ($this->request->id), but it 
says "false".

Here's my controller code:

> public function add()
> {
>     if ($this->request->is('post')) {
>         $this->AttractionProperty->create();
>         if ($this->AttractionProperty->save($this->request->data)) { // 
> data array opslaan
>             $this->Session->setFlash(__('De eigenschap werd succesvol 
> toegevoegd.'), 'default', array(
>                 'class' => 'alert alert-success'
>             ));
>             return $this->redirect(array(
>                 'action' => 'index'
>             ));
>         }
>         $this->Session->setFlash(__('Er is een fout tijdens het toevoegen 
> van de eigenschap opgetreden.'), 'default', array(
>             'class' => 'alert alert-danger'
>         ));
>     }
> }
> public function edit($id = null)
> {
>     if (!$id) {
>         throw new NotFoundException(__('Ongeldige eigenschap.'));
>     }
>     $property = $this->AttractionProperty->findById($id);
>     if (!$property) {
>         throw new NotFoundException(__('Ongeldige eigenschap.'));
>     }
>     if ($this->request->is(array('post', 'put'))) {
>         $this->AttractionProperty->id = $id;
>         if ($this->AttractionProperty->save($this->request->data)) { // 
> data array opslaan
>             $this->Session->setFlash(__('De eigenschap werd succesvol 
> bewerkt.'), 'default', array(
>                 'class' => 'alert alert-success'
>             ));
>             return $this->redirect(array(
>                 'action' => 'index'
>             ));
>         }
>         $this->Session->setFlash(__('Er is een fout tijdens het bewerken 
> van de eigenschap opgetreden.'), 'default', array(
>             'class' => 'alert alert-danger'
>         ));
>     }
>     if (!$this->request->data) {
>         $this->request->data = $property;
>     }
> }


I did read 
http://book.cakephp.org/2.0/en/models/saving-your-data.html#model-save-array-data-null-boolean-validate-true-array-fieldlist-array
 to 
retrieve more info, but it seems that I've done everything to the rules. I 
also know that you can do 

> if ($this->AttractionProperty->save($this->request->data(array('modified' 
> => false)))) {
>     
> }


when you save in the "add" action, but I realy want to know what's the 
underlying problem ;)

Is this a common problem or what could be the reason of this behavior?

-- 
Like Us on FaceBook https://www.facebook.com/CakePHP
Find us on Twitter http://twitter.com/CakePHP

--- 
You received this message because you are subscribed to the Google Groups 
"CakePHP" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to cake-php+unsubscr...@googlegroups.com.
To post to this group, send email to cake-php@googlegroups.com.
Visit this group at http://groups.google.com/group/cake-php.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to