Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Yii]Zdublowany zapis do bazy
Forum PHP.pl > Forum > PHP > Frameworki
gambler
Witam,
przy zapisywaniu modelu w bazie powstaje mi 4 takie same wpisy. Może miał ktoś podobny problem i zna rozwiązanie.
Tutaj fragment kontrolera
  1. if(isset($_POST['CarEvent']))
  2. {
  3. $event = new CarEvent;
  4. $event->attributes = $_POST['CarEvent'];
  5. $event->car_id = $id;
  6. $event->add_user_id = Yii::app()->user->id;
  7. if($event->save(false))
  8. {
  9. $message = "Thanks for add!";
  10. //Yii::app()->user->setFlash('account',$message);
  11. $this->redirect('view',array('id'=>$car_id,'message'=>$message));
  12. }
  13.  
  14. }

baza danych
  1. CREATE TABLE IF NOT EXISTS `tbl_car_event` (
  2. `id` INT NOT NULL AUTO_INCREMENT ,
  3. `car_id` INT NOT NULL ,
  4. `date_start` DATE NOT NULL ,
  5. `date_end` DATE NULL ,
  6. `description` TEXT NOT NULL ,
  7. `counter` VARCHAR(45) NOT NULL ,
  8. `type_event` VARCHAR(45) NOT NULL ,
  9. `add_user_id` INT NOT NULL ,
  10. PRIMARY KEY (`id`) )
  11. ENGINE = InnoDB
qrooel
Może masz kilka połączeń do bazy na raz?
Albo jakieś 'before filter' w kontrolerze albo modelu?

To co pokazałeś jest prawidłowe. Pokaż może trochę więcej, plik konfiguracyjny np.
red.orel
Pokaż całą akcję kontrolera oraz model.
irmidjusz
A czemu
  1. $event->save(false)
? Może gdybyś użył walidacji, dowiedział byś się w czym problem...
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.