問題タブ [singleton-methods]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
2 に答える
1325 参照

java - シングルトン コントローラー Java

先日シングルトンについて読んでいて、自分のプロジェクトに実装しようと思ったのですが、論理的に流れているように見えるのが気に入らなかったので、コントローラークラスと呼ばれるものを作成して、状態を管理しましたシングルトン オブジェクト。ただし、ロジックがチェックアウトされていること、および誤って追加のインスタンスを生成していないことを確認したいと考えています。

編集*これは、参照されている質問の複製とは見なされません。これは、シングルトンの典型的/標準的な実装であり、コントローラーを使用してシングルトンの状態を管理することにより、まったく異なるモデルを使用します。

0 投票する
1 に答える
44 参照

ruby-on-rails - シングルトンメソッドを呼び出した親オブジェクトにアクセスする方法はありますか?

次の機能スニペットを考えると、データベース クエリを減らすのに問題があります。

アカウントの負荷 (0.4ms) SELECT "accounts".* FROM "accounts" WHERE "accounts"."id" = $1 LIMIT $2 [["id", 1], ["LIMIT", 1]]

起動

アカウントの負荷 (0.3ms) SELECT "accounts".* FROM "accounts" WHERE "accounts"."id" = $1 LIMIT $2 [["id", 1], ["LIMIT", 1]]

テスト:ユーザーが何かをした

アカウントの負荷 (0.3ms) SELECT "accounts".* FROM "accounts" WHERE "accounts"."id" = $1 LIMIT $2 [["id", 1], ["LIMIT", 1]]

テスト:ユーザーが何かをした

アカウントの負荷 (0.3ms) SELECT "accounts".* FROM "accounts" WHERE "accounts"."id" = $1 LIMIT $2 [["id", 1], ["LIMIT", 1]]

テスト:ユーザーが何かをした

アカウントの負荷 (0.3ms) SELECT "accounts".* FROM "accounts" WHERE "accounts"."id" = $1 LIMIT $2 [["id", 1], ["LIMIT", 1]]

テスト:ユーザーが何かをした

Account モデルがユーザーごとにデータベースから取得されていることがわかります。

元のアカウントを参照するために Singleton メソッドのようなものを使用したいと思ってself.accountいましたが、デフォルトでは明らかに関係が存在しないため、現在 を使用していself.new.accountます。

a内部から保存された元の Account モデルを取得できる場所は他にありself.do_somethingますか? 明らかにアカウントをパラメータに渡すことができますが、特に後で引数を追加する場合は面倒です...