2012-03-29 41 views
2

我需要在CAKEPHP中添加IGNORE選項以saveAll()方法。我想要確切地阻止這一點。其他一些SO問題與驗證有關,isUnique()檢查就是這樣。我需要實施這個條件,不在乎是否在後面。向CAKEPHP添加INSERT IGNORE聲明saveAll方法

請告訴我。

回答

1

,我認爲這是可能的,除了使用execute()功能可將數據源​​提供的唯一方法是,如果你擴展了Mysql DataSource類和改變的create()renderStatement()功能的行爲,以包括您希望的情況下它追加了IGNORE SQL關鍵字。

您希望將數據源文件放入APP/Model/Datasource/並使其延伸Mysql(假設您使用CakePHP 2+)。看看上面的2個函數。我只是創建一個案例,如果在將某個選項傳遞給create()時調用renderStatement()時使用'createignore'而不是'create'。

也就是說,最有可能的方法就是在不經過那麼多麻煩的情況下實現你想要做的事情。如果你詳細說明你想要做什麼,我可能會給你一個更好的答案。

+0

我正在使用蛋糕1.3.X。我已經檢查過這些功能。我準備好擴展代碼庫 – 2012-03-29 08:29:50

+0

@duke - 所以如果你已經擴展了代碼庫,爲什麼你不能做我上面寫的東西? 1.3的文件幾乎完全相同。您需要根據您使用的是「DboMysql」還是「DboMysqli」進行擴展。我忘了提及,你需要更新'APP/config/database.php'中的配置文件來指向你新創建的數據源。 – 2012-03-29 15:48:10

+0

我會盡我所能, – 2012-03-30 04:13:52