【问题标题】:Call a controller method from a model class从模型类调用控制器方法
【发布时间】:2026-02-16 20:40:01
【问题描述】:

我有一个简单的问题。是否可以从模型中调用控制器方法?我似乎无法弄清楚是否可能。我应该只是将模型中的某些内容返回到控制器而不是尝试直接调用方法吗? 谢谢, 帕特

【问题讨论】:

  • 能做到这一点并不能解决该不该做的问题。您的模型可能对您的控制器一无所知 - 您可能有一个有缺陷的设计,而不是调用控制器方法的问题。
  • 是的,我认为我不应该能够在模型中调用控制器方法,但我不确定。以为我会先检查 *。

标签: ruby-on-rails model-view-controller


【解决方案1】:

我应该只是将模型中的某些内容返回给控制器,而不是尝试直接调用方法

确实,这是正确的方法。我确信我必须有一些方法可以从控制器调用一些方法,但你不应该使用它们。模型必须封装您正在处理的领域问题的所有逻辑、业务等。控制器只需要在模型之间发送和接收消息,然后返回视图。

【讨论】: