Hi all! Thanks in advance for replys! :P
I have the following model:
class EpisodeRelease extends AppModel{
> public $cacheQueries = true;
> public $name = 'EpisodeRelease';
> public $primaryKey = 'id';
> public $table = 'episode_releases';
> public $hasMany = array(
> 'EpisodeReleaseMirror' => array (
> 'className' => 'EpisodeReleaseMirror',
> 'foreignKey' => 'episode_release_id',
> 'conditions' => array('EpisodeReleaseMirror.approved_by >' =>
> 0),
> 'order' => 'EpisodeReleaseMirror.download_count DESC'
> )
> );
> public $belongsTo = array(
> 'User' => array(
> 'className' => 'User',
> 'foreignKey' => 'user_id'
> ),
> 'EpisodeType' => array(
> 'className' => 'EpisodeType',
> 'foreignKey' => 'episode_type_id'
> ),
> 'Anime' => array(
> 'className' => 'Anime',
> 'foreignKey' => 'anime_id'
> ),
> 'Language' => array(
> 'className' => 'Language',
> 'foreignKey' => 'language_id'
> )
> );
> public $hasAndBelongsToMany = array(
> 'Fansub' => array(
> 'className' => 'Fansub',
> 'joinTable' => 'Fansub2EpisodeRelease',
> 'foreignKey' => 'episode_release_id',
> 'associationForeignKey' => 'fansub_id',
> 'unique' => false
> ),
> 'VideoCodec' => array(
> 'className' => 'VideoCodec',
> 'joinTable' => 'VideoCodec2EpisodeRelease',
> 'foreignKey' => 'episode_release_id',
> 'associationForeignKey' => 'video_codec_id',
> 'order' => 'VideoCodec.order DESC',
> 'unique' => false
> )
> );
> }
> ?>
>
> and the following code in the controller...
> function add(){
> if($this->_canAdd()){
> $this->set('animes',
> $this->EpisodeRelease->Anime->find('list',array('fields'=>'name')));
> $this->set('languages',
> $this->EpisodeRelease->Language->find('list',array('fields'=>'name')));
> $this->set('episodeTypes',
> $this->EpisodeRelease->EpisodeType->find('list',array('fields'=>'name')));
> $this->set('fansubs',
> $this->EpisodeRelease->Fansub->find('list',array('fields'=>'name','order'=>'Fansub.name
>
> ASC')));
> $this->set('videoCodecs',
> $this->EpisodeRelease->VideoCodec->find('list',array('fields'=>'name','order'
> => 'VideoCodec.order DESC')));
>
> if($this->request->is('post')){
> $this->request->data['EpisodeRelease']['user_id'] =
> $this->Auth->User('user_id');
> $this->EpisodeRelease->set($this->request->data);
> if($this->EpisodeRelease->saveAll($this->request->data)){
> $this->Session->setFlash('Release aggiunta con
> successo. Sarà visualizzabile non appena un amministratore lo avrÃ
> approvato.');
> //$this->redirect(array('action'=>'index'));
> pr($this->request->data);
> }else{
> pr($this->request->data);
> $this->Session->setFlash('ERRORE! Compila tutti i
> campi!');
> $this->set('similar_releases',array());
> }
> }else{
> $this->set('similar_releases',array());
> }
> }else{
> $this->Session->setFlash('Non hai i permessi necessari per
> eseguire questa azione.');
> $this->redirect(array('action'=>'index'));
> }
> }
>
When i press Submit the array sent to saveAll is the following:
> Array
> (
> [EpisodeRelease] => Array
> (
> [language_id] => 1
> [anime_id] => 1
> [episode_type_id] => 1
> [number] => 2
> [name] => episode
> [user_id] => 2
> )
>
> [Fansub] => Array
> (
> [Fansub] => Array
> (
> [0] => 1
> )
>
> )
>
> [VideoCodec] => Array
> (
> [VideoCodec] => Array
> (
> [0] => 8
> )
>
> )
>
> )
>
> But it seems that HABTM relations are'nt saved.... why?
Thanks again! ^^
WebRep
Overall rating
--
Our newest site for the community: CakePHP Video Tutorials
http://tv.cakephp.org
Check out the new CakePHP Questions site http://ask.cakephp.org and help others
with their CakePHP related questions.
To unsubscribe from this group, send email to
[email protected] For more options, visit this group at
http://groups.google.com/group/cake-php
add.ctp
Description: Binary data
index.ctp
Description: Binary data
<<attachment: AppController.php>>
<<attachment: EpisodeReleasesController.php>>
<<attachment: EpisodeRelease.php>>
