Несколько первичных ключей с Doctrine 1 и Symfony 1?

Я уже знаю, что невозможно работать с несколькими первичными ключами в Symfony 1 и Doctrine 1, но вы, ребята, знаете какие-нибудь хорошие обходные пути?

Solutions Collecting From Web of "Несколько первичных ключей с Doctrine 1 и Symfony 1?"

Общим обходным путем является добавление ключа auto_increment в таблицу-ответчик «многие ко многим», а не определение отношений, просто установление стандартных отношений внешнего ключа с таблицами. Пока у вас есть индекс на двух столбцах, производительность будет прекрасной.

Помимо отношений «многие ко многим» доктрина1 не работает с первичным ключом по нескольким колонам. Но если вы хотите использовать отношения «многие ко многим», используйте это следующим образом:

BlogPost: columns: user_id: integer title: string(255) body: clob relations: User: local: user_id foreign: id type: one foreignType: one foreignAlias: BlogPosts Tags: class: Tag foreignAlias: BlogPosts refClass: BlogPostTag local: blog_post_id foreign: tag_id Tag: columns: name: string(255) BlogPostTag: columns: blog_post_id: type: integer primary: true tag_id: type: integer primary: true relations: BlogPost: local: blog_post_id foreign: id foreignAlias: BlogPostTags Tag: local: tag_id foreign: id foreignAlias: BlogPostTags 

Если вы НЕ хотите / должны использовать отношения «многие-ко-многим», лучше использовать уникальный ключ для нескольких столбцов.