1

着信要求 (get、post など) に関連しない機能があります。

しかし、MVC の慣例に従い、Model-Controller のようにしたいと考えています。

  • コントローラー部分では、別の部分からの収入要求を処理し、どのモデルから情報、承認、フィルタリングなどを取得するかを決定します。

  • モデル部分では、情報の保存、検証、期限切れなどを行います。

Rails では、コントローラーのアクションは、routes ファイルによって指示された収入要求によって呼び出すことができます。

私にとっての問題は、次のようなコントローラーを作成した場合です。

class SomeController < ApplicationController

  def some_action; end

end

アプリケーションの任意の場所からsome_actionメソッドを呼び出すにはどうすればよいですか?SomeController

すべてのコントローラーはアプリ オブジェクトの一部であると考えているため、 PS CallingSomeController.new.some_actionは私には正しくないように思えます。

4

2 に答える 2

0

おそらく、この機能を何らかの方法でカプセル化するPOROを作成する必要があると思います。そのため、ロジックに依存する機能は、コントローラーではなく、その中にある必要があります。次に、どちらのコントローラーでもそれらを呼び出すことができます。

于 2013-01-03T11:43:34.490 に答える
0

これを行うには、コントローラーをインスタンス化します。

SomeController.new.some_action

ただし、これは実際には MVC の方法ではありません。あなたがそれを何に使いたいのかよくわかりませんが、おそらくもっと良い方法があります。たとえば、データの変更はコントローラーではなくモデルに属する必要があるため、モデルのように実行できます。

于 2013-01-03T11:00:27.457 に答える