2011-08-03 95 views
14

我有一些當前在config.yml文件中的設置。如何從Symfony2中的數據庫加載配置設置?

未來我希望能夠開發一個管理員能夠更新這些設置的界面,所以我希望能夠通過數據庫管理這些設置。

我將如何能夠將這些設置從數據庫加載到Symfony2以及何時加載它們?

乾杯

亞當

回答

7

有一個cookbook article解釋大致如何設置,從外部的Drupal這樣做(儘管是短暫的),參照負荷。其基本思路是做這樣的事情在你的配置(例如是陽明):

# app/config/config.yml 
imports: 
    - { resource: parameters.php } 

然後parameters.php你可以做任何你需要讓你的配置,並進行如下設置:

$container->setParameter('my.db.parameter', $value); 

(取自食譜,稍作修改)。

+0

嗨richsage,謝謝你的答案聽起來不錯。有沒有一個你推薦存儲parameters.php文件的好地方?它應該是一個捆綁包或服務的一部分,或者我應該把它作爲一個獨立的php文件。那麼我將如何訪問doctrine orm服務?抱歉有這些問題。 –

+0

嗨richsage,抱歉只看了食譜示例,可以看到文件應該去哪裏。 –

+1

我會說你的文件存儲在'app/config'目錄中 - 至少你的配置都在一起。我不確定那時「可用」的服務是如何的,但是,如果有的話,所以不知道你是否能夠做到這一點,例如'$ container-> get(「my.service」)'。雖然可能值得一試! – richsage

7

看一看UnifikDatabaseConfigBundle。它創建了一個數據庫結構,可以直接從數據庫配置Symfony參數。

+0

大捆!我正要開發類似的東西。感謝分享! :) – tftd

相關問題