ユーザーが独自のカスタム数式をデータ テーブルに適用して新しいフィールドを取得できるようにするにはどうすればよいですか?
私は、オープン Web 上の購読ユーザーのために大量のデータを保存および処理するDjangoアプリケーションに取り組んでいます。1 ページのリクエストで 100 ~ 10,000 のセンサー読み取り値を考えてください。このデータを使用してグラフを描画し、それを含む表も表示します。センサーのグループは、私の Web サイトに登録しているユーザーによって定義されることを期待しています (つまり、django モデルに対応しています)。
ユーザーがセンサー データから派生したフィールドを作成できるようにしたいと考えています (セットアップ プロセスの一部として)。たとえば、ユーザーは家屋の平均温度が (温度センサー 1 + 温度センサー 2) / 2 であることを知っており、それをグラフに表示したいとします。彼らはまた、加熱された太陽熱温水が (温度出力 - 温度入力) * 流量 * 変換定数であるなど、もっと興味深いものを望むかもしれません。次に、これらの定義済みの式を保存し、このページのセンサー データを表示する他のすべての人のために保存します。
主な問題は、システムの中心にある式をどのように定義するかです。数式を定義するためのユーザー定義の文字列 (たとえば 100 文字の長さ) を持っていて、それを自分で解析する必要がありますか? ユーザー定義を入力サンプルに置き換えて、それをトーストと呼びますか?
アップデート
最終的に、私が求めていた答えが得られました: サーバーに格納されたユーザー関数を評価する安全な方法。関数が定義されているときにクライアントでも同じ関数を評価することは、UI を直感的にするための優れた方法です。