2017-03-04 8 views
1

自分のプログラムのすべての設定を持つyaml設定ファイルがあります。たとえば :GoLangバイパーで設定項目の値を変更

something: 
    enabled: true 

私はアイテムの値を取得するためにhttps://github.com/spf13/viperを使用しています:

viper.GetBool("something.enabled") 

をしかし直接「something.enabled」の値を変更する方法がある場合は、私が思っていましたバイパーを使って "false"にする?

something: 
    enabled: false 
+0

あなたの設定ファイルを変更すると、あなたのプログラマー内の設定も更新されますか?はいの場合は、例えば 'fsnotify'で設定ファイルを見る必要があります。ファイルが変更されると、イベントを使用して設定をリロードします。 – apxp

+0

@apxp正確には、私はプログラムが設定ファイル内の項目の値を更新することを意味しませんでした。あなたが言ったことの反対です。 – SuperPykkon

+1

その場合、私はyamlパッケージをusindで設定ファイルを読み込んでマーシャリングすることを勧めます。その後、confファイルに書き込むことができます。 – apxp

答えて

2

あなたはこのように、Setメソッドを使用することができますように見えます:それはなりますので、変更は、同様に、configファイルに適用されます

viper.Set(「something.enabled」、 false)

関連する問題