Domanda

Si prega di vedere il codice qui: http://pastie.org/1092106

Quando chiamo il metodo createPost sul Blog, continuo a ricevere un'eccezione, si legge quanto segue:

At line 474 in lib/Doctrine/ORM/Persisters/BasicEntityPersister.php - Undefined index: id

OH, e anche ... io rigenerare $ _SESSION [ 'utente'] su ogni caricamento della pagina, quindi l'oggetto non si stacca dal gestore di entità o qualcosa di simile.

Qui ci sono gli schemi Doctrine2 è In previsione:

Array (
    [0] => CREATE TABLE Note (id INT AUTO_INCREMENT NOT NULL, user_id INT DEFAULT NULL, text LONGTEXT NOT NULL, created DATETIME NOT NULL, PRIMARY KEY(id)) ENGINE = InnoDB
    [1] => CREATE TABLE BlogPost (note_id INT NOT NULL, blog_name VARCHAR(255) NOT NULL, PRIMARY KEY(note_id, blog_name)) ENGINE = InnoDB
    [2] => CREATE TABLE User (email VARCHAR(95) NOT NULL, id INT NOT NULL, password VARCHAR(32) NOT NULL, alias VARCHAR(15) DEFAULT NULL, firstName VARCHAR(20) DEFAULT NULL, lastName VARCHAR(20) DEFAULT NULL, enabled TINYINT(1) NOT NULL, created DATETIME NOT NULL, UNIQUE INDEX User_id_uniq (id), PRIMARY KEY(email)) ENGINE = InnoDB
    [3] => ALTER TABLE Note ADD FOREIGN KEY (user_id) REFERENCES User(id)
    [4] => ALTER TABLE BlogPost ADD FOREIGN KEY (note_id) REFERENCES Note(id)
    [5] => ALTER TABLE BlogPost ADD FOREIGN KEY (blog_name) REFERENCES Blog(name)
)

Speriamo che qualcuno può aiutare!

È stato utile?

Soluzione

Quindi, dopo un'ulteriore ispezione, sembra come se aggiungendo la seguente annotazione per il campo id $ sulla mia classe User ottenuto che funziona:

* @Id

Forse a questo punto qualcuno potrebbe aiutarmi a capire il motivo per cui la mia proprietà deve essere un identificatore univoco prima di poter partecipare ad un rapporto?

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top