外部APIに接続するようなクラスの設計 Railsで外部のAPIサービスにつなぐクラスなどを書く際に、将来的にGemにすることを見越してできる限りそのプロジェクト自体に依存しないように設計すると思います。(ここでいう、「依存しない」とは、たとえばそのプロジェクトのSettingsLogicをこのクラスから見に行かないなど。) ここで、外部のAPIが接続時にAPIキーと、トランザクション毎に変わる情報を渡さないといけないとすると、APIキーは一度Railsを立ち上げると変わらないのでクラスに持たせて、トランザクションは引数で渡す、ということをやると思います。 class ExternalServiceAdapter include ActiveSupport::Configurable config_accessor :api_key def create_transaction(trans
![Railsでinitializersに書いた内容をdevelopmentモードで再読み込みさせる - Qiita](https://cdn-ak-scissors.b.st-hatena.com/image/square/1161a160016b1b4c0e91ebcc49bbc00a2bf367f4/height=288;version=1;width=512/https%3A%2F%2Fqiita-user-contents.imgix.net%2Fhttps%253A%252F%252Fcdn.qiita.com%252Fassets%252Fpublic%252Farticle-ogp-background-9f5428127621718a910c8b63951390ad.png%3Fixlib%3Drb-4.0.0%26w%3D1200%26mark64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTkxNiZoPTMzNiZ0eHQ9UmFpbHMlRTMlODElQTdpbml0aWFsaXplcnMlRTMlODElQUIlRTYlOUIlQjglRTMlODElODQlRTMlODElOUYlRTUlODYlODUlRTUlQUUlQjklRTMlODIlOTJkZXZlbG9wbWVudCVFMyU4MyVBMiVFMyU4MyVCQyVFMyU4MyU4OSVFMyU4MSVBNyVFNSU4NiU4RCVFOCVBQSVBRCVFMyU4MSVCRiVFOCVCRSVCQyVFMyU4MSVCRiVFMyU4MSU5NSVFMyU4MSU5QiVFMyU4MiU4QiZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTU2JnR4dC1jbGlwPWVsbGlwc2lzJnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9YzZmNmQ1Nzk4ZDJlMWU3YmZiMTA1ZGFlN2IwMDRhZjU%26mark-x%3D142%26mark-y%3D112%26blend64%3DaHR0cHM6Ly9xaWl0YS11c2VyLWNvbnRlbnRzLmltZ2l4Lm5ldC9-dGV4dD9peGxpYj1yYi00LjAuMCZ3PTYxNiZ0eHQ9JTQwcnlvbmV4dCZ0eHQtY29sb3I9JTIzMjEyMTIxJnR4dC1mb250PUhpcmFnaW5vJTIwU2FucyUyMFc2JnR4dC1zaXplPTM2JnR4dC1hbGlnbj1sZWZ0JTJDdG9wJnM9MTc2YjU5MDI2NDM3MjNkYjg4M2EzZmRhNWY5ZjdhOTM%26blend-x%3D142%26blend-y%3D491%26blend-mode%3Dnormal%26s%3D80e60cb56100bf98360b53e36b982a6e)