2017-08-29 8 views
0

コントローラ経由で環境変数/設定変数を設定したいと思います。 私は管理パネルにいくつかのフォームを持っており、データベーステーブルにデータを保存した後にこれらを提出すると、現在の.envファイルの代わりにこれらの変数を使いたいと思います。試しましたコントローラでlanvelの.env変数を設定しようとしました

config(['app.name'=>$setting->site_name]); 

コントローラでは動作しません。 私も Config::set('app.name',$setting->site_name);を試しましたが、動作しません。 私の視点でconfig(['app.name'=>$setting->site_name]);を実行すると、これはこのビュー(ランタイム変更)でのみ変更されます。 しかし、WordPressのインストールの仕組みなど、アプリケーション全体で変更したいのですが、フォーム変数からデータベース変数を設定したいのですが。

フォームを使用して開発者が変数を設定する方法は、ラベールアプリケーションのコーデックナンバーでですか?

私はこのリンクを試しましたが、私のために働いていません。 How to set .env values in laravel programmatically on the fly

誰でも手伝えますか? ありがとうございます。

答えて

1

設定の変更は、残りのリクエストでのみ有効になります。 .envファイルは、単に各要求で構成がロードされる開始点です。アプリから環境を調整する予定がないので、.envファイルを調整することはお勧めしません。一般的には、リアルタイムで設定を調整しないでください。つまり、キャッシュできないということです。

要求を介してデータを保持する必要がある場合は、データベースまたはRedisキャッシュに配置します。

関連する問題