donc je un tarif qui hasMany Prix (chacun pour différentes devises - ne compte pas vraiment)CakePHP SaveAll ne fonctionne pas du tout
la vue (supprimé parties non pertinentes)
<?php echo $this->Form->create('Tarif');
echo $this->Form->input("Price.0.price");
echo $this->Form->input("Price.0.currency");
echo $this->Form->input("Price.0.sms_format");
echo $this->Form->input("Price.0.sms_number");
echo $html->link(__('Add currency', true), '#', array('onclick'=>'return false;', 'class' => 'tarifs-add-currency'));
echo $this->Form->input('Tarif.valid_since', array('timeFormat' => '24'));
echo $this->Form->input('Tarif.valid_until', array('timeFormat' => '24'));
echo $this->Form->input('Tarif.storage_time', array('label' => __('Storage time (days)', true)));
echo $this->Form->end(__('Submit', true));?>
Le contrôleur fonction pour l'enregistrer ressemble à ceci
function admin_add() {
if (!empty($this->data)) {
$this->Tarif->create();
if ($this->Tarif->saveAll($this->data)) {
$this->Session->setFlash(__('The tarif has been saved', true));
$this->redirect(array('action' => 'admin_index'));
} else {
$this->Session->setFlash(__('The tarif could not be saved. Please, try again.', true));
}
}
}
le lien « ajouter la monnaie » est là pour ajouter de nouvelles entrées pour les nouveaux prix, mais qui ne sont pas le problème, car il ne fonctionne pas même sans y ajouter des devises. Lorsque j'essaie de le sauvegarder, il est écrit 'Le tarif n'a pas pu être sauvegardé. Veuillez réessayer.'. Ne savez-vous pas ce que je devrais changer pour le faire fonctionner?
Merci EL
Merci pour votre réponse Nik, validationError montre que tarif_id pour le prix n'est pas valide ... Je pensais que cake s'en occuperait dans la méthode saveAll(), donc y a-t-il un gâteau pour régler le tarif_id pour tous les prix ou dois-je juste parcourir tous les prix et le régler manuellement? – ELwhis
Suppression de la règle de validation tarif_id du modèle Price - tout fonctionne correctement maintenant. Merci beaucoup;) – ELwhis
Fondamentalement, quand vous avez ParentModel-