Hi together,

I'm not shure how to solve problems, i get, while inserting the
generated sql.
I'm using sf1.1 with the sfDoctrinePlugin.

Snippet of my schema.yml with a 1:n relation:
-----------------
User:
  actAs:
    Timestampable: 
  columns:
    first_name: string(255)
    last_name: string(255)
    nick: string(255)
    password: string(255)
    street: string(255)
    postcode: string(5)
    city: string(255)
Rating:
  columns:
    created_at: timestamp
    user_id: integer(4) 
  relations:
    Users:
      class: User
      foreignAlias: Ratings
-----------------

If i do now a 
symfony cc
symfony doctrine:build-model
symfony doctrine:build-sql backend
symfony doctrine:insert-sql backend

i get an error: 
-----------------
  SQLSTATE[42000]: Syntax error or access violation: 1072 Key column
'user_id' doesn't exist in table. Failing Query: CREATE TABLE rating (id
BIGINT AUTO_INCREMENT, created_at DATETIME, INDEX user_id_idx (user_id),
PRIMARY KEY(id)) ENGINE = INNODB
-----------------

There is no "user_id"-field in the table "rating" (wich i thought
doctrine would add by itself), and it is impossible to produce a Index
on a not existing field.

So, i add the field to the schema:

-----------------
User:
  actAs:
    Timestampable: 
  columns:
    first_name: string(255)
    last_name: string(255)
    nick: string(255)
    password: string(255)
    street: string(255)
    postcode: string(5)
    city: string(255)
Rating:
  columns:
    created_at: timestamp
    user_id: integer(4) 
  relations:
    Users:
      class: User
      foreignAlias: Ratings
-----------------

Now i - get an error:
----------------- 
SQLSTATE[HY000]: General error: 1005 Can't create table
'./fragjupp/#sql-bb2_e.frm' (errno: 150). Failing Query: ALTER TABLE
rating ADD FOREIGN KEY (user_id) REFERENCES user(id)
-----------------

Yes, that's right, the field "user_id" in the sql-query was already
added:
-----------------
CREATE TABLE rating (id BIGINT AUTO_INCREMENT, created_at DATETIME,
user_id INT, INDEX user_id_idx (user_id), PRIMARY KEY(id)) ENGINE =
INNODB;
-----------------
So it can't be added as a foreign key. 

Now, i'm trapped. In both cases i get an error. 

How do I have to write my schema.yml, that this works without errors?

thanks for your ideas

Tobias


--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups 
"symfony users" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to [EMAIL PROTECTED]
For more options, visit this group at 
http://groups.google.com/group/symfony-users?hl=en
-~----------~----~----~----~------~----~------~--~---

Reply via email to