我有一个与传入请求无关的功能(如get,post等)。
但我想遵循MVC约定并使其像模型控制器一样:
在控制器部分我将处理来自其他部分的收入请求,决定从哪个模型检索信息,授权,过滤等;
我将存储信息,验证信息,使信息过期等等。
在Rails中,控制器的动作可以由路径文件指示的收入请求调用。
如果我创建了这样的控制器,那对我来说是个问题:
class SomeController < ApplicationController
def some_action; end
end
如何从我的应用程序中的任何位置调用some_action
中的方法SomeController
?
P.S。调用SomeController.new.some_action
对我来说似乎不对,因为我认为所有控制器都是app对象的一部分。
答案 0 :(得分:0)
您可以通过实施控制器来实现此目的。
SomeController.new.some_action
然而,这并非真正的MVC方式。我真的不知道你想用它做什么,但可能还有更好的方法。例如,它可以像在模型中那样完成,因为数据的修改应该不属于控制器。
答案 1 :(得分:0)
我认为您应该创建一个PORO,它将在某些方法中封装此功能。因此,任何依赖于逻辑的功能都应该在其中,而不是在控制器中。然后你可以在任一控制器中调用它们。