2011-07-12 49 views
0

我使用的symfony 1.4學說1.2和我有YAML格式如下表:禁用自動編號字段代學說1.2

Log: 
    options: 
    type:    ARCHIVE 
    actAs:    
    Timestampable:  
     updated: 
     disabled: true 
    tableName:   user_log 
    columns: 
    event:  integer(4) 
    user_id:  integer(4) 
    ip:   integer(5) 
    country:  string(2) 
    message:  string(100) 

的問題是,我並不需要生成的ID字段由原則,因爲ARCHIVE存儲引擎不允許索引,自動增量值或主鍵。我沒有在Doctrine文檔中找到如何禁用此行爲。

有誰知道我該如何處理這個問題?我發現的唯一方法是添加一個虛擬主鍵(例如,使created_at,eventuser_id作爲yaml中的主鍵),然後修改生成的SQL以刪除PRIMARY KEY「句子,但我認爲這不是一個優雅的解決方案

+0

除了你所提到的之外,沒有別的辦法。原則實體類總是需要一個主鍵 – Timo

回答

1

只要我知道Doctrine,至少Doctrine 1.2,強迫你在你的所有表中有一個主鍵我在文檔中找不到任何關於將它設置爲false的東西你可以看到一個相關的問題here