異なる名前空間に動的なvarを定義しようとしています。別の名前空間に動的なvarを設定する方法
デフォルトでは、すべての移行はlobos.migrations名前空間に保持されます。 移行コマンドによって自動的にロードされるため、 は自分でロードする必要はありません。したがって、別の名前空間を使用するには、 lobos.migration/migrations-namespace動的変数を変更する必要があります。
私は新しい名前空間内から動的変数を設定する方法を理解できません。
私は(NS `lobos.migration)を介してREPLでこれを行うが、私自身、NS
(def ^:dynamic lobos.migration/*migrations-namespace* 'gb.install.migrations)
からこのCMDを実行すると、Can't create defs outside of current ns
を生み出すことができます。
どうすればこの問題を解決できますか?
私は比較的まれではあるが、日常的に起こるだろうと思う操作のために、その最後のバージョンは信じられないほどバロックです。グローバルなパラメータ設定はあまり使用しないでください。たとえば、 'pprint'の出力幅を変更するには' clojure.pprint/* print-right-margin * 'を設定できますが、上記の 'alter-var-root'メソッドは私が得た唯一のメソッドです働く – Mars