プラグインを作成しようとしましたが、うまくいきません。これは初めての試みで、数年前にプラグインチュートリアルを試した以外は経験がありません。DataExplorerモジュールの制限をオーバーライドしようとしています。
このアプローチは正しいでしょうか、それとも完全に間違っていますか?
注意:カスタム制限が有効になっているかテストしやすくするために、QUERY_RESULT_DEFAULT_LIMIT を 1 に設定しています。
プラグインを作成しようとしましたが、うまくいきません。これは初めての試みで、数年前にプラグインチュートリアルを試した以外は経験がありません。DataExplorerモジュールの制限をオーバーライドしようとしています。
このアプローチは正しいでしょうか、それとも完全に間違っていますか?
注意:カスタム制限が有効になっているかテストしやすくするために、QUERY_RESULT_DEFAULT_LIMIT を 1 に設定しています。
ここではプラグインの使用はお勧めしません。
代わりに、グローバル設定(環境変数でサポートされる)を追加するPRを提出してください。
過去2年間、これは誰にとっても最優先事項ではなかったようですが、今日これが必要になり、コンテナ内でファイルを直接編集することで解決しました。
回避策として、app.yml に以下のようなものを追加します。
after_bundle_exec:
- replace:
filename: "/var/www/discourse/plugins/discourse-data-explorer/plugin.rb"
from: /QUERY_RESULT_MAX_LIMIT = 10_000/
to: QUERY_RESULT_MAX_LIMIT = 100_000
しかし、PRは plugin.rb に以下を追加するようなものになるようです。
GlobalSetting.add_default(:query_result_max_limit, 10000)
そして、上記のモジュールを以下のように変更します。
QUERY_RESULT_MAX_LIMIT = GlobalSetting.query_result_max_limit || 10_000
それで十分でしょうか?
閉じる…
定数を使用するのをやめ、代わりに GlobalSetting.query_result_max_limit をすべてで使用することをお勧めします。デフォルトを設定済みなので、二重に設定する必要はありません。
しかし、GlobalSetting を設定しない場合のデフォルトが必要ですよね?
plugin.rbで設定します。
オーーーー。 「add_default」は実際にデフォルトを追加するということですね。 ![]()
しまった。
したがって、デフォルトのGlobalSettingを追加し、古い定数へのすべての参照をGlobalSettingに置き換えます。
わかりました。
やってみます。