[Doctrine] problem dodawaniem rekordów z kluczem obcym |
[Doctrine] problem dodawaniem rekordów z kluczem obcym |
13.05.2009, 00:05:16
Post
#1
|
|
Grupa: Zarejestrowani Postów: 254 Pomógł: 7 Dołączył: 9.10.2007 Skąd: Poznań Ostrzeżenie: (0%) |
Witam,
Niestety do dzisiaj praca z Doctrine przebiegała naprawdę sprawnie i przyjemnie aż do momentu gdy chciałem dodać rekord. Próbuję dodać rekord do tabeli uzytkownicy a nastepnie numer telefonu do tabeli uzytkownicy_telefony i tutaj mam problem. Przedstawię krótki kod żeby nie zanudzać Bląd który otrzymuje
Według manuala oraz róznych poradników powinno działać a jednak oto kod:
Podobnie jest z:
Klasa Uzytkownicy
Klasa UzytkownicyTelefony
Kod troche obszerny ale to łatwy przykład czy ktoś może mi pomoc ? Będę bardzo wdzięczny. ============= EDIT ============= Problem rozwiązany. Okazało się że aby operacja zakończyłą się sukcesem tabela uzytkownicy_telefony musi posiadac pole id (PRIMARY KEY) zwykle do tego typu tabel nie daje klucza bo nie bylo takiej potrzeby jednak widze ze Doctrine tego wymaga. Ten post edytował Sajrox 12.05.2009, 23:43:08 |
|
|
13.05.2009, 08:45:34
Post
#2
|
|
Grupa: Zarejestrowani Postów: 53 Pomógł: 5 Dołączył: 13.04.2007 Skąd: Szczecin Ostrzeżenie: (0%) |
to Ty sam tworzysz tabele? polecam pisac modele i zwalac proces tworzenia na Doctrine
warto pozniej przejrzec tabele, kontrolowac tworzenie kluczy obcych itp Ten post edytował murwazy 13.05.2009, 08:46:24 |
|
|
19.05.2009, 18:10:13
Post
#3
|
|
Grupa: Zarejestrowani Postów: 898 Pomógł: 80 Dołączył: 31.05.2008 Ostrzeżenie: (20%) |
nie zapomnij że doctrine automatycznie przybiera wartość pola id jako id, jeżeli utworzysz inne pole id z pkey, to musisz o tym powiedzieć doctrine:
np Kod $this->hasColumn('user_id', 'string', 32, array(
'type' => 'string', 'fixed' => 1, 'primary' => true, 'length' => '32' ) ); -------------------- cojack blog - mój blog (na jakiś czas off).
"jak czegoś nie wiem, to nie myślę że wiem" - moja domena |
|
|
4.06.2009, 10:40:05
Post
#4
|
|
Grupa: Zarejestrowani Postów: 254 Pomógł: 7 Dołączył: 9.10.2007 Skąd: Poznań Ostrzeżenie: (0%) |
Faktycznie, wystarczyło dodać 'primary' => true i działa
Dzięki wielkie. |
|
|
Wersja Lo-Fi | Aktualny czas: 25.04.2024 - 11:00 |